跳转至

测试开发

测试开发的核心是测试,开发的目的是更好地服务于测试。测试开发要深入理解测试业务,在此基础上设计开发,以帮助测试人员提高效率并解决实际问题,而不是按部就班纯粹意义上的开发人员。

自动化测试

  • 自动化测试只是一种测试手段,仅能替代重复的手工操作,并不能替代手工测试。

  • 自动化的本质是发现变化的东西对不变的东西的影响,即主要用于回归测试,验证新功能是否影响了旧功能。

  • 自动化一定是基于业务的,必须要考虑可重用性和维护成本,不要为了自动化而自动化,从而违背测试的宗旨。

明确一些概念:

比如webdriver,提供一些接口

框架

比如pytest,解决一类问题

工具

  • selenium,更抽象,屏蔽底层代码,一般有操作界面
  • Testcafe 测试用例写法异于常规
  • cypress 不建议用于爬虫
  • puppeteer 主要用于爬虫和开展快速测试,Google出品,只能用于Chrome貌似

模型:工具与框架的设计思想

  • 线性测试,不可复用
  • 模块化驱动测试,复用性高
  • 数据驱动测试,参数化
  • 关键字驱动测试,傻瓜界面话,麻烦,没必要
  • robot_framework
  • 行为驱动测试,DSL,接近自然语言
  • python behave lettuce(基于cucumber?使用gherkin语言)
  • ruby cucumber
  • java Jdave

最后更新: 2022-05-01