目录:导读
- 前言
- 一、Python编程入门到精通
- 二、接口自动化项目实战
- 三、Web自动化项目实战
- 四、App自动化项目实战
- 五、一线大厂简历
- 六、测试开发DevOps体系
- 七、常用自动化测试工具
- 八、JMeter性能测试
- 九、总结(尾部小惊喜)
前言
自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。
个人认为,只要能服务于测试工作,能够帮助我们提升工作效率的,不管是所谓的自动化工具,还是简单的SQL 脚本、批处理脚本,还是自己编写的小工具等等,都属于自动化范畴。
自动化是一个思想,而不是仅仅是某个工具的使用。
自动化并非万能,人工测试还是不可或缺的。自动化的目的在于验证问题,手工测试的目的在于发现问题。
为什么引入自动测试
直接一点的:就是为了节省人力、时间或硬件资源,提高测试效率,满足版本需求的快速迭代,提升产品测试质量。
自动化测试前提
1、软件需求变动不频繁,相对稳定的功能模块或接口。
2、项目周期足够长。
3、自动化脚本可重复使用。
4、手工测试无法完成的,或者需要投入较大时间人力的。
自动化测试的适用性
切入时机:
以基本完成软件的程序界面开发、页面控件相对稳定为宜。
适用场景:
1、测试时间相对长,且存在大量重复性、机械性手工测试的项目。
2、产品型软件,每发布一个新的版本或打补丁都需要对其他模块执行相同的测试。
3、项目型软件,需求变更频繁,每变更一次,需要对原有的无争议的功能做测试。
4、经常需要更换应用程序部署站点的软件,每更换一次需要对所有功能做验证测试。
5、测试时间相对长,且存在大量需要执行回归测试的软件项目。
6、系统界面稳定,需要对业务流程进行验证测试的软件。
7、采用增量开发持续集成的项目,需要对频繁更新的程序执行验证测试。
8、软件项目采用主流开发平台技术,且不存在物理交互的测试。
不适用场景:
项目工期紧、测试周期短的项目不应采取自动化测试。
界面的美观、产品易用性测试不应采取自动化测试。
自动化测试过程
自动化测试需求分析 -> 自动化测试框架选型、搭建 -> 自动化测试用例、脚本编写 -> 自动化测试结果分析(总执行用例数、成功用例数、失败用例数等) -> 版本更新迭代维护、持续集成。
自动化分类
UI自动化:
维护成本高,受益最小。当然不是说UI自动化没有价值,适当的界面自动化还是有用的。
目前应用较多的场景是在版本发布、回归测试,可对功能稳定、基本无改动的模块开展UI自动化,从而缩短版本发布周期。
间接的,也让人工测试把重心放在产品的核心业务场景以及改动较大的功能模块上。
接口自动化:
维护成本适中,受益适中,可以考虑覆盖大部分业务流程。
现在很多系统前后端架构是分离,后端接口服务开发是先行的,尽早介入可以从接口层发现更多的问题,预防和减少模块调用时才暴露问题。
单元测试:
维护成本低,受益最大,价值最大。但是目前基本是开发在做,测试人员参与较少,而且对测试人员要求较高。
常用自动化框架
接口自动化测试方向:Python+requests+pytest+yaml+alluer+Jenkins;
web自动化测试方向:Python+selenium4+pytest+POM+allure+Jenkins;
app自动化测试方向:Python+appium+POM+pytest+allure+Jenkins;
下面是我整理的2023年最全的软件测试工程师学习知识架构体系图 |
一、Python编程入门到精通
二、接口自动化项目实战
三、Web自动化项目实战
四、App自动化项目实战
五、一线大厂简历
六、测试开发DevOps体系
七、常用自动化测试工具
八、JMeter性能测试
九、总结(尾部小惊喜)
不断追求进步,勇于创新尝试,永不放弃梦想,坚持不懈地努力奋斗,才能最终实现自己的价值和理想。不要害怕失败,因为失败是成功之母。只要心怀信念,积极进取,你就一定能够走向成功的道路!
每一次的尝试,都是成功的开始。坚持自己的梦想,不要停下前进的步伐。相信自己,勇往直前,迈向更高峰!只有不断奋斗,才能赢得未来的辉煌!
在生命的旅途中,成功只属于那些愿意接受挑战并从失败中学习的人。勇敢地面对困难,积极地迎接挑战,坚定地前行,你一定能够实现自己的梦想。记住,每一步都很重要,只有不停地努力和奋斗,才能成就更加辉煌的明天!