目录:导读
- 前言
- 一、Python编程入门到精通
- 二、接口自动化项目实战
- 三、Web自动化项目实战
- 四、App自动化项目实战
- 五、一线大厂简历
- 六、测试开发DevOps体系
- 七、常用自动化测试工具
- 八、JMeter性能测试
- 九、总结(尾部小惊喜)
前言
框架本身一般不完整到可以解决特定问题;
框架天生就是为扩展而设计的;
框架里面可以为后续扩展的组件提供很多辅助性、支撑性的方便易用的工具,也就是说框架是配套了一些帮助解决某类问题的库(libraries)或工具(tools)。
约束性:针对解决特定问题的软件框架会首先定义问题的边界,进而将相关的软件组件约束在这个边界内,保持框架在解决问题方面上的内聚性。
支撑性:框架本身不解决什么问题,但给了解决问题的相关组件一个组合底子,这个底子的科学性和易用性直接影响在此之上进一步开发的科学性和方便性。
为解决某些特定问题而约束边界,支撑整个问题解决方案,配套了一些解决问题的组件而构成的工具。
特定问题:什么问题?——自动化测试
约束边界:为什么约束?——明确测试范围和目的
解决方案:用什么方案解决问题?——编程语言+工具+其他
构成工具的组件:哪些组件?—— 用例、脚本、数据、日志、报告、通知
工具:特点是什么?—— 灵活性、可扩展性、高内聚低耦合
自动化测试
1、为什么要进行自动化测试?
①黑盒测试回归效率低
②手动测试的偶然性和不确定性
③回归的覆盖率不足
④交付的产品质量无法保证,全靠评估
⑤系统越复杂,问题越多
⑥上线时间长、构件失败率高导致的蝴蝶效应(迭代快,加班多)
2、自动化测试能解决什么问题?
①提高出现问题后的响应速率
②降低回归成本
③提高回归覆盖率
④提高回归效率
⑤提高回归的稳定性
3、自动化测试的不足有哪些?
①无法减少成本投入,而是为了加快测试结果反馈,提升测试质量
②自动化适用于回归和冒烟,而不是发现BUG
③录制回放功能是鸡肋,可视化并不是一个很好的做法
④不是所有所有系统所有功能都适合做自动化测试
自动化测试框架
应具备以下的功能:
Log:日志记录和管理功能,针对不同的情况,设置不同的日志级别,方便定位问题;
Report:测试报告生成和管理以及即时通知,测试结果快速响应;
Source:配置文件、静态资源的管理,遵循高内聚低耦合原则;
Common:公共函数、方法以及通用操作的管理,遵循高内聚低耦合原则;
TestCase:测试用例管理功能,一个功能点对应一个或者多个case,尽可能的提高覆盖率;
TestData:测试数据管理功能,数据与脚本分离,降低维护成本,提高可移植性;
TestSuite:测试组件管理功能,针对不同场景不同需求,组装构建不同的测试框架,遵循框架的灵活性和扩展性;
Statistics:测试结果统计管理功能,每次执行测试的结果统计、分析、对比以及反馈,数据驱动,为软件优化和流程改进,提供参考;
Continuous:持续集成环境,即CI环境,包括测试文件提交、扫描编译、执行测试、生成报告及时通知等功能,持续集成是自动化测试的核心!
常见的自动化测试框架
1、接口自动化框架
①java+testNG/Junit+Maven/Ant/Gradle+Jenkins+MySQL+testlink/redmine
②python+unittest/pytest+Git+Jenkins+MySQL+testlink/redmine
③python+rebot framework+unittest/pytest+Git+Jenkins+MySQL+testlink/redmine
④jmeter+Maven/Ant+Jenkins+MySQL+testlink/redmine
2、UI自动化测试框架
①java+selenium/appium+testNG/Junit+Maven/Ant/Gradle+Jenkins+MySQL+testlink/redmine
②python+selenium/appium+unittest/pytest+Git+Jenkins+MySQL+testlink/redmine
③python+rebot framework+unittest/pytest+Git+Jenkins+MySQL+testlink/redmine
自动化测试框架特性
编程语言+单元测试框架+扫描编译工具+持续集成工具+数据库+项目管理工具。
编程语言:编写测试脚本、日志记录和输出;
单元测试框架:提供测试脚本运行、异常校验等一些列的配置;
扫描编译工具:测试文件扫描编译,一般配合持续集成工具使用效果更佳;
持续集成工具:Jenkins,经典的持续集成工具;
数据库:测试数据管理;
项目管理工具:测试结果统计管理;
下面是我整理的2023年最全的软件测试工程师学习知识架构体系图 |
一、Python编程入门到精通
二、接口自动化项目实战
三、Web自动化项目实战
四、App自动化项目实战
五、一线大厂简历
六、测试开发DevOps体系
七、常用自动化测试工具
八、JMeter性能测试
九、总结(尾部小惊喜)
在奋斗的舞台上,决心打破枷锁;在困境中,信念点亮前路。奋斗不是一时的热情,而是坚持不懈的努力。每一次拼搏都是收获的种子,只要心怀勇气,追求卓越,成功与成就将伴随你铸就辉煌人生。
逆境是人生的试金石,奋斗是磨砺成长的舞台。不管前路多崎岖,也不论困难多险阻,勇往直前,坚持不懈,只有拼尽全力,才能迎接属于自己的辉煌与成功。
在脚下是艰难的征途,但心中是无尽的勇气。奋斗不止,追求卓越,只有拼尽全力,才能书写属于自己的传奇。相信自己的力量,坚持梦想,无论何时何地,都能创造出辉煌的人生!