【干货分享】自动化测试理论知识以及相关框架

自动化测试

1.进行自动化测试的原因:

  a.黑盒测试回归测试效率低

  b.手动测试的偶然性和不确定性

  c.回归的覆盖率不足

  d.交付的产品质量无法保证,全靠评估

  e.系统越复杂,问题越多

  f.上线时间长,构件失败率高导致的蝴蝶效应(迭代多,加班快)

2.自动化测试解决的问题:

  1)提高出现问题后的响应速率

  2)降低回归成本

  3)提高回归覆盖率

  4)提高回归效率

  5)提高回归的稳定性

3.自动化测试不足:

1)无法减少成本投入,而是为了加快测试结果反馈,提升测试质量

2)自动化适用于回归和冒烟,而不是发现bug

3)录制回放功能的鸡肋,可视化并不是一个很好的做法

4)不是所有的系统所有功能都适合做自动化测试

4.自动化测试框架文件夹介绍:

Log:日志记录和管理功能,针对不同的情况,设置不同的日志级别,方便定位问题;

Report:测试报告生成和管理以及即时通知,测试结果快速响应;

Source:配置文件、静态资源的管理,遵循高内聚低耦合原则;

Common:公共函数、方法以及通用操作的管理,遵循高内聚低耦合原则;

TestCase:测试用例管理功能,一个功能点对应一个或者多个case,尽可能的提高覆盖率;

TestData:测试数据管理功能,数据与脚本分离,降低维护成本,提高可移植性;

TestSuite:测试组件管理功能,针对不同场景不同需求,组装构建不同的测试框架,遵循框架的灵活性和扩展性;

Statistics:测试结果统计管理功能,每次执行测试的结果统计、分析、对比以及反馈,数据驱动,为软件优化和流程改进,提供参考;

Continuous:持续集成环境,即CI环境,包括测试文件提交、扫描编译、执行测试、生成报告及时通知等功能,持续集成是自动化测试的核心!

5.常用的自动化测试框架:

5.1:接口自动化测试框架

  1)Java+testNG/Junit+Maven/Ant/Gradle+Jenkins+MySQL+testlink/redmine

  2)python+unittest/pytest+Git+Jenkins+MySQL+testlink/redmine

  3)python+rebot framework+unittest/pytest+Git+Jenkins+MySQL+testlink/redmine

  4)jmeter+Maven/Ant+Jenkins+MySQL+testlink/redmine

5.2:UI自动化测试框架

  1)java+selenium/appium+testNG/Junit+Maven/Ant/Gradle+Jenkins+MySQL+testlink/redmine

  2)python+selenium/appium+unittest/pytest+Git+Jenkins+MySQL+testlink/redmine

  3)python+rebot framework+unittest/pytest+Git+Jenkins+MySQL+testlink/redmine 

6.适合自动化测试的项目:

【干货分享】自动化测试理论知识以及相关框架_第1张图片

7.selenium:应用于web的自动化测试工具,支持多平台,多浏览器,多语言来实现自动化

优点:

  1.开源免费

  2.多浏览器支持:Chrome,Firefox,IE,Edge

  3.多平台支持:Linux,Windows,MAC

  4.多语言支持:Java,python,Ruby,C#,JavaScript,C++

  5.对web界面有良好的支持

  6.简单(API简单),灵活(开发语言驱动)

  7.支持分布式测试用例执行

8.下载浏览器驱动:

各个浏览器驱动下载地址:Downloads | Selenium

最后: 可以在我的VX公众号:【自动化测试老司机】免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。 

你可能感兴趣的:(自动化测试,软件测试,自动化测试,测试工具,软件测试,测试工程师)