BDD-driven natural language automated testing framework, present by Trip Flight
行为驱动开发(Behavior-driven development,缩写BDD),是一种软件过程的思想或者方法,是一种敏捷软件开发的技术. Flybird是基于BDD模式的前端UI自动化测试框架,提供了一系列开箱即用的工具和完善的文档。 基于Behave,实现BDD中“自然语言测试用例文档”和“自动化测试代码”关联需要用到支持BDD工具。 基于Airtest,实现BDD中“测试用例能在自动化测试平台上执行”需要用到UI自动化测试框架。 特性 使用Flybird你能够完成大部分的手机端自动化操作,以下是一些帮助入门的特性描述: 基于BDD模式,类自然语言语法 支持自动化APP操作、表单提交、UI元素校验、键盘输入、Deeplink跳转等 默认支持英文、中文两种语言,支持更多语言扩展 插件式设计,支持用户自定义自动化扩展 提供cli脚手架,快速搭建项目 提供html报告 环境要求 python(3.7-3.9) nodejs(12+) 快速开始 1. 环境搭建 使用pip安装flybird框架,过程中会自动安装所需的 依赖包 在Mac/Linux系统下,需要手动赋予adb可执行权限 cd {your_python_path}/site-packages/airtest/core/android/static/adb/mac chmod +x adb cd {your_python_path}/site-packages/airtest/core/android/static/adb/linux chmod +x adb 使用脚手架创建项目 创建过程中会提示输入以下信息 项目名称 测试平台:Android / iOS 测试设备名称( 可跳过,后续可在config中配置deviceId节点 ) webDriverAgent的BundleID( 可跳过,ios设备连接使用,后续可在config中配置webDriverAgent节点 ) APP测试包名称(可跳过,默认为ctrip演示包,后续可在config中配置packageName节点) 为了帮助使用,项目创建时,会在test目录下生成演示features,后续可自行删除 2. 测试执行 请确保配置的测试设备能够正常连接 Android: 执行命令 adb devices , 检查设备列表中是否包含测试设备 iOS:以tidevice库举例,执行命令 tidevice list,检查设备列表中是否包含测试设备 Android设备连接 Q&A 请先安装手机对应品牌的官方驱动,确保能使用电脑对手机进行USB调试 确保已经打开了手机中的”开发者选项”,并且打开”开发者选项”内的”允许USB调试” 部分手机需要打开”允许模拟位置”、”允许通过USB安装应用” 关闭电脑上已经安装的手机助手软件,能避免绝大多数问题,请务必在任务管理器中手工结束手机助手进程 iOS设备连接 Q&A 请先准备一台macOS ,使用xcode部署 iOS-Tagent 成功后,能够在mac或windows机器上连接到iOS手机。请点击链接下载项目代码到本地进行部署。 mac 环境通过 Homebrew 安装iproxy brew install libimobiledevice windows 环境安装itunes 下载安装测试包 […]
Read more