如何开展自动化测试框架的构建?
我们公司的自动化测试框架主要是有页面库,数据驱动,测试脚本,测试报告,持续集成这几个部分组成的。
页面对象库对自动化包括工具(selenium,appium)API 的二次封装,还有使用二次封装后的自动化工具类实现的页面元素封装(Page Object)然后会给封装好的页面设置一个统一入口类。这些之中会有一个页面元素文件专门存放元素的定位方法。
数据驱动部分主要是测试脚本中使用的数据文件(excel,yaml,txt)以及读取方法类,如果数据涉及到数 据库,也会把对应的数据读取方法封装到这个部分。
测试脚本主要是通过 pytest 测试框架进行编写的,选择其的原因主要有其支持 assert 语句断言,适合复杂的功能测试,执行过程中可以自定义用例执行顺序和跳过以及预期,支持重复执行,还可兼容 unittest 编写的测试用例,最重要的是支持参数化和方便持续集成工具集成。
测试报告主要是通过 pytest 自动生成的Allure 报告,其可读性可生动的数据表图比 pytest 报告更能反应测试结果,也可以集成与 Jenkins 中。
持续集成方面主要是通过 Jenkins 进行实现的,目的在于测试脚本的无人值守执行以及自动生成测试报告,方便测试人员能够省出时间进行更多的功能测试和探索性测试。(通过设置几个 git,gitlab,mailer,allure, 等功能插件,配置 Allure 报告,默认邮件发送设置。用例脚本主要存放在 gitlab 用例库中,设置好轮询策略之后,配置报告发送的目标邮箱,就可以实现持续集成实践中的测试环节)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?