Skip to content

自动化测试策略

简介

自动化测试策略(Automation Testing Strategy)是指在软件测试过程中,通过自动化手段来提高测试效率和效果的计划和方法。这些策略通常涵盖了如何选择合适的自动化工具、如何设计和执行测试用例、如何管理测试数据和测试环境等内容。

todo 截图

自动化测试策略价值

  • 提高测试效率。
  • 增强测试覆盖率。
  • 提高测试稳定性。

自动化测试策略体系

用户端测试体系

  • 研发单元测试:JUnitRobolectric 不依赖真机或者模拟器。
  • 集成测试:Espresso 单应用快速集成测试。
  • 验收测试:AppiumATX/AirTestCalabash 跨应用测试。

google android 测试体系

todo 截图

工具体系参考

Selenium

Selenium 是一个开源的自动化测试工具,用于 Web 应用程序的测试。它允许用户通过脚本控制浏览器的行为,从而自动执行测试用例。Selenium 支持多种浏览器和操作系统,提供了丰富的 API 来模拟用户操作。

todo 截图

Appium

Appium 是一个开源的自动化测试框架,用于移动应用程序的测试。它支持原生应用、混合应用以及移动网页应用的自动化测试,适用于 iOSAndroid 平台。

todo 截图

智能遍历工具

  • 百度 SmartMonkey
  • 腾讯 NewMonkey
  • 头条 fastbot
  • 支付宝 MacacaNoSmoke
  • Android MonkeyAndroid App Crawler
  • 霍格沃兹测试开发学社 AppCrawler
  • OWASP-ZAP Web 漏洞自动探测

todo 截图

稳定性测试体系案例 - Fastbot

Fastbot 已广泛应用于字节客户端类产品的稳定性测试与兼容性测试。每日启动任务数超过1 万次,每月平均发现5万个以上的崩溃。借助 Fastbot 的能力,我们在发版前就可以修复大部分的 crash,确保线上用户的使用体验。同时,Fastbot在整个DevOps 流程扮演重要的基础服务角色

字节跳动

todo 截图

服务端测试体系

  • 手工测试
  • 自动化测试
  • DIFF 测试、流量回放
  • Mock

后端链路调用架构图

淘宝核心链路应用拓扑图

todo 截图

使用 Mock 奇数解耦与提高测试覆盖率

接口测试章节有详细讲解。

todo 截图

接口测试框架

  • Python: Requests
  • Java: RestAssured
  • 简约的接口测试 DSL
  • 支持结构化解析 XMLJSON 等。

Requests

requests 是一个流行的 Python 库,用于发送 HTTP 请求。它提供了简单而强大的接口来与 Web 服务器进行交互,支持多种 HTTP 方法(如 GETPOSTPUTDELETE 等),并且易于使用。

todo 截图

RestAssured

RestAssured 是一个用于测试和验证 RESTful Web 服务的 Java 库。它提供了简洁的 API 来执行 HTTP 请求,并且能够对响应进行验证。RestAssured 主要用于 API 测试,但也可以用于其他类型的 Web 服务测试。

todo 截图

测试用例自动生成技术 - Swagger

Swagger 是一个广泛使用的工具套件,用于设计、构建、记录和测试 RESTful API。它提供了一整套工具来帮助开发者创建易于理解和使用的 API 文档。

todo 截图

总结

  • 分层测试策略
    • 系统测试
    • 集成测试
    • 单元测试
  • 测试手段
    • 手工测试
    • 自动化测试
    • 测试框架