一、软件测试分类

测试技术体系_jmeter

测试技术体系_jmeter_02


测试技术体系_测试工具_03


α测试:开发环境下测试人员尽可能模拟用户操作去测

β测试:公测,真实环境下用户去测

黑盒测试:功能测试、性能测试

又称数据驱动测试

完全不考虑程序内部结构和内部特性注重于测试软件的功能需求

只关心软件的输入数据和输出数据

测试技术体系_selenium_04


白盒测试:单元测试

研究产品内部的源代码和程序结构

单元测试就是白盒测试的一种

测试技术体系_appium_05


冒烟测试:软件的基本功能(电商app:浏览→加购物车→下单→付款)

回归测试:系统测试过程中发现的bug开发需要进行修改(一般第2轮才开始回归),回归①bug有没有改好②修改bug的影响功能③老功能能不能用(老功能也可能发现问题)→一轮轮回归,问题都解决完了,所有新功能的用例执行完了、老功能的用例回归完了

随机测试:所有操作都是随机生成的,模拟用户想到哪操作到哪,发现一些边缘性的比较隐蔽的错误。一般放在测试的最后去执行,选择比较重要的功能(新上功能、以前出现重大bug的模块进行复测)

探索性测试:随机测试的升级版,这是一种测试的思维,放弃复杂的测试计划和测试用例,在我们经验的基础上哪里怎么操作可能出问题,未来人工操作的方向

二、分层测试体系

(一)自动化分层测试体系

70%单元测试

20%服务测试

10%用户界面测试

测试技术体系_postman_06

1.单元测试(JUnit、TestNG、unittest、pytest)

测试技术体系_测试工具_07


单元测试方法

  • Java:JUnit、TestNG
  • Python:unittest、pytest

2.接口测试(Charles、Fiddler、postman、Jmeter、loadRunner、Requests、HttpRunner、HttpClient、RestAssured)

  • 接口全称Application Programming Interface,一般称作API
  • 是针对软件对外提供服务的接口的输入输出进行测试
  • 检查接口参数传递的正确性,接口功能实现的正确性,输出结果的正确性,以及对各种异常情况的容错处理的完整性和合理性
    接口测试方法
  • Charles、Fiddler
  • postman
  • Jmeter(接口功能、接口性能)
  • loadRunner
  • python: Requests、HttpRunner
  • Java: HttpClient、RestAssured

3.UI测试(selenium、appium)

测试技术体系_selenium_08

UI测试方法
手工方法:人工查看、操作

自动化方法:

  • web: selenium
  • app: appium