什么样的项目适合做自动化测试:
1、任务测试明确,不会频繁变动 ui自动化完全依赖于ui界面,只能根据对现有的一些功能进行测试,无法对新功能进行测试
2、每日构建后的验证测试
3、比较频繁的回归测试
4、软件系统界面稳定,变化少
5、需要在多平台运行相同的测试用例、组合遍历型的测试、大量的重复测试
6、软件维护周期长(冒烟、系统测试、回归、验收、线上)
7、项目进度压力不太大
8、被测系统软件开发比较规范,能够保证系统的可测试性
9、具备大量的自动化测试平台
10、测试人员具备较强的编程能力
一般情况下,只要满足如下三个情况就可以开展自动化测试
软件需求变更不频繁、项目周期较长、自动化测试脚本可重复使用
UI自动化弊端:
1、 严重依赖于UI界面,界面只有一个小的变动就会导致UI自动化代码要维护
2、 投入产出比太低 UI自动化需要大量时间写代码调试/维护代码
3、 只能对现有的经过系统测试的需求进行测试,无法完成对新需求的测试(AI测试)
4、 自动化转化对于系统的操作要求比较高
UI测试在面试的时候比较活跃,但实际工作中覆盖面很窄
面试要求会UI自动化测试,目的在于要求应聘人员有一定的代码能力
自动化测试流程:
可行性分析:对于被测系统检查是否有价值进行自动化转化
测试需求分析:检查被测项目中哪些需求是可以通过UI测试来进行测试(Face ID支付)
制定测试计划
自动化测试设计:自动化测试用例,以及自动化测试框架的设计
测试脚本开发:测试人员根据自己分配的需求,进行对应的UI自动化代码的开发
无人职守测试:脚本的执行(持续集成工具:Jenkins)
提交测试报告:测试工作全部执行完毕,对被测系统出具的报告(自动化覆盖率、执行成功率、执行失败的case原因)
脚本维护阶段:
自动化测试用例 来自于 系统测试用例