软件测试常用的测试工具(推荐这4个测试工具)

开营通知:重磅消息 | 2022年最新全栈测试开发技能实战指南(第3期)

最新测开训练营,先上车报名有优惠~

软件测试工具大全经过一年的更新,终于发布了。此版本将作为基准,后续仍会持续更新,为大家呈现更多优秀的测试工具。

软件测试工具大全,包括测试工具、框架和平台,偏向开源和免费。

说明

软件测试常用的测试工具(推荐这4个测试工具)表示开源软件;

表示免费使用,或者个人免费;

一. 大前端1.1 移动端抓包工具

Lyrebird – 移动端的抓包及 Mock 平台。(美团)

spy-debugger – 适用于任何手机移动端 webview 的一站式页面调试、抓包工具。

nohost – 基于 Whistle 实现的多账号多环境远程配置及抓包调试平台。(腾讯)

性能测试

PerfDog – 一款用于采集手机(Android&iOS)性能数据的 PC 端工具。(腾讯)

mobileperf – 基于 Python 实现的 Android 性能采集工具。(阿里)

Pyroscope – 基于 Go 的开源实时性能分析平台。能帮你找出代码的性能问题、CPU 使用过高的原因,还有丰富的图表和调用树展示。

LoliProfiler – 用于 Android 游戏和应用程序的C/C 内存分析工具。(腾讯)

MemoryLeakDetector – 西瓜视频安卓团队开发的原生内存泄漏监控工具。(字节)

软件测试常用的测试工具(推荐这4个测试工具)

Tailor – 西瓜视频安卓团队开发的一款通用的 hprof 裁剪压缩工具。(字节)

Booster – 一款易于使用、轻量级、功能强大且可扩展的质量优化工具包,专为移动应用程序设计。首要目标是解决APP复杂度增加带来的质量问题,如性能、稳定性、包大小等。(滴滴)

软件测试常用的测试工具(推荐这4个测试工具)

自动化

跨平台

Appium – 用于 iOS、Android 和 Windows Apps 的自动化。

Detox – 端到端的移动应用测试和自动化框架。

Karate – UI/API 自动化测试框架。

软件测试常用的测试工具(推荐这4个测试工具)

Android

SoloPi – 支持录制回放、一机多控和性能测试的 Android 自动化测试工具。(蚂蚁)

scrcpy- 显示和控制你的 Android 设备。(Genymobile)

minicap – 从 Android 设备中流式传输实时屏幕捕获数据。(STF)

adb_shell – ADB 的 Python 实现,具有 Shell 和 FileSync 功能。

python-adb – Python ADB Fastboot实现。(Google)

ADB Event Mirror – 通过命令行实现 Android 设备的一机多控。

ADB Enhanced – 增强 ADB 命令。

uiautomator2 – Android Uiautomator2 Python包装器。(openatx)

Moby – E2E 测试框架,用于具有复杂环境要求的测试。(Google)

Docker-Android – Android in docker 解决方案,支持 noVNC 和视频录制。

Fastbot-Android – Android APP 稳定性测试工具。(字节)

Shot – 适用于 Android 的屏幕截图测试库。

软件测试常用的测试工具(推荐这4个测试工具)

iOS

WebDriverAgent – iOS 的 WebDriver 服务实现,可用于远程控制 iOS 设备。

python-wda – Facebook WebDriverAgent Python 客户端库。(openatx)

tidevice – iOS 自动化命令行工具。(阿里)

libimobiledevice – 使用本机协议与iOS设备上的服务进行通信。

pymobiledevice – libimobiledevice 跨平台软件库的 python 实现。

idb – 用于自动化 iOS 模拟器和设备的命令行工具。

EarlGrey – iOS UI自动化测试框架。(Google)

KIF – 保持功能正常 – iOS 功能测试框架。

SwiftMonkey – 对 iOS 应用程序进行随机 UI 测试的框架。

Fastbot-iOS – iOS APP 稳定性测试工具。(字节)

软件测试常用的测试工具(推荐这4个测试工具)

Mixbox – iOS UI 测试框架。

测试平台

STF – 基于 Agular 和 Node.js 实现的移动设备管理平台

atxserver2 – 基于 Python 实现的移动设备管理平台。

1.2 Web端自动化

cypress – 对浏览器中运行的所有内容进行快速,轻松和可靠的测试。

qawolf – 将浏览器的测试速度提高了 10 倍。

软件测试常用的测试工具(推荐这4个测试工具)

TestCafe – 基于 Node.js 的端到端 Web 自动化测试工具。

Helium – 用于 Web 自动化的最佳 Python 库。

Selenoid – 使用 Docker 容器启动浏览器的 Selenium hub的强大实现。

Capybara – Web 应用程序的验收测试框架。

selenide – 使用 Java 进行简洁的 UI 测试。

splinter – 用于 Web 应用程序的 Python 测试框架。

gauge – 提供可靠的浏览器自动化测试框架。

Headless recorder – 记录浏览器交互并生成 Puppeteer 或 Playwright 脚本。

Selenium – 浏览器自动化框架和生态系统。

WebDriverManager – Selenium WebDriver 的自动化驱动程序管理。

Selenium Wire – 能够检测出浏览器发出的请求。

tape – 用于 node 和浏览器的 tap-production 测试工具。

稳定性

gremlins.js – 用于 Web 应用程序和 Node.js 的 Monkey 测试库。

性能

Front-End-Performance-Checklist – 唯一一个运行速度快于其他的前端性能检查表。

其他

jsoup – Java HTML 解析器。

1.3 PC端跨平台

Spectron – 使用 ChromeDriver 和 WebdriverIO 轻松测试你的 Electron 应用程序。

TagUI – 免费的 RPA 工具。

RPA-Python – 用 Python 编写 RPA。

PyAutoGUI – 跨平台的 GUI 测试工具。

Windows

pywinauto – 基于 Python 的 Windows GUI 自动化。

macOS二. 服务端2.1 接口测试

Mock

vcrpy – 自动模拟 HTTP 交互。

Mockoon – 本地运行模拟 API 的最简单,最快的方法。

hoverfly – 轻量级服务虚拟化/API 模拟工具。

软件测试常用的测试工具(推荐这4个测试工具)

抓包

Fiddler – 跨平台的 Web 调试代理工具。

mitmproxy – 交互式 HTTPS 代理,支持 PC 和 APP 抓包。

平台/GUI工具

Postman – API 开发协作平台。

YApi – 可本地部署的、打通前后端及测试的可视化的接口管理平台。

hoppscotch – 类似 Postman 的开源 API 开发协作平台。

Postcode – 类似 Postman 的 VS Code 插件。

Katalon Studio – 用于 Web、移动和 API 测试的最佳自动化测试工具。

MeterSphere – 一站式开源持续测试平台。

流量回放

GoReplay – 使用 go 开发的浏量回放工具。

vcr – 记录测试套件的 HTTP 交互,并在以后的测试运行期间重播它们,以进行快速,确定性和准确的测试。

Sharingan – (写轮眼)是一个基于golang的流量录制回放工具。(滴滴)

TCPCopy – 一个 TCP 流重放工具。

框架

Dredd – 与语言无关的 HTTP API 测试工具。

HttpRunner – 一个简单,优雅但功能强大的HTTP(S)测试框架。

hrun4j – 不仅是 Java 版 的 httprunner,而是一站式接口测试解决方案。

rest-assured – Java DSL,可轻松测试 REST 服务。

Tavern – 用于自动化测试 RESTful API 的命令行工具和 Python 库和 Pytest 插件。

其他

HTTPie – 类似 cURL 但用起来更人性化也更强大的 HTTP 命令行工具。

Hurl – 运行以简单纯文本格式定义的HTTP 请求。

2.2 数据库

DBeaver – 基于 Java 开发的通用数据库管理和开发工具。

sysbench – 基于 LuaJIT 的可编写脚本的多线程基准测试工具,常用于数据库基准测试。

软件测试常用的测试工具(推荐这4个测试工具)

2.3 性能测试

JMeter – Apache JMeter。

k6 – 使用 Go 和 JavaScript 的现代负载测试工具。

ali – 生成 HTTP 负载并实时绘制结果。

Pumba – Docker 的混沌测试工具。

Vegeta – 多功能的 HTTP 负载测试工具。

Locust – 用 Python 编写的可扩展用户负载测试工具。

软件测试常用的测试工具(推荐这4个测试工具)

2.4 其他

Testinfra – 测试你的基础设施。

三. 领域测试3.1 安全测试

sqlmap – 自动 SQL 注入和数据库接管工具。

软件测试常用的测试工具(推荐这4个测试工具)

Infection Monkey – 一个自动化的渗透测试工具。

Bandit – 查找 Python 代码中常见安全问题。

3.2 大数据

Synth – 声明性数据生成器。

Mimesis – 用于 Python 的高性能假数据生成器,它以多种语言提供用于多种用途的数据。

基准测试

YCSB – 云服务基准测试。(雅虎)

HiBench – 大数据基准套件。(英特尔)

工具平台

DataQuality – DQ 是一个在大数据环境中构建并行和分布式质量检查的框架。它可用于计算指标并执行检查以确保结构化或非结构化数据的质量。它完全依赖于 Spark。

MobyDQ – 在数据管道上自动进行数据质量检查的工具。

Great Expectations – 通过数据测试、文档和分析,帮助数据团队消除管道债务。

Qualitis – 一个支持多种异构数据源的质量校验、通知、管理服务的数据质量管理平台,用于解决业务系统运行、数据中心建设及数据治理过程中的各种数据质量问题。

3.3 人工智能3.4 混沌工程

Chaos Monkey – 一种弹性工具,可帮助应用程序容忍随机实例故障。

chaos-monkey-spring-boot – 用于 Spring Boot 的 Chaos Monkey。

kube-monkey – Netflix 的 Chaos Monkey 在 Kubernetes 集群中的实现。

四. 测试管理

AgileTC – 敏捷的测试用例管理平台,支持测试用例管理、执行计划管理、进度计算、多人实时协同等能力。(滴滴)

TestLink – 开源测试和需求管理系统。

Kiwi – 领先的开源测试管理系统。

五. 测试框架5.1 MockJava

Moco – 一个简单的 Mock 工具。

Mockito – 单元测试的 Mocking 框架。

WireMock – 适用于所有场合的 Web 服务测试替身。

Python

pytest-mock – 与 pytest 一起使用的 Mock 工具。

JavaScript

Nock – 适用于 Node.js 的 HTTP Mock 工具。

软件测试常用的测试工具(推荐这4个测试工具)

msw – Mock Service Worker (MSW) 是一个用于浏览器和 Node.js 的 API 模拟库。

Kotlin

Mockk – Kotlin 的模拟库。

Golang

mockery – Golang 的模拟代码自动生成器。

5.2 覆盖率Java

Super-Jacoco – 基于 Jacoco、Git 二次开发打造的一站式 JAVA 代码全量/diff 覆盖率收集平台。(滴滴)

Python

pytest-cov – 与 pytest 一起使用的覆盖率插件。

HTTPretty – Python 的 HTTP 客户端模拟工具。

5.3 单元测试Python

pytest – 最流行的 Python 测试框架。

Swift

Quick – Swift(和 Objective-C)测试框架。

软件测试常用的测试工具(推荐这4个测试工具)

JavaScript

Mocha – 用于 node.js 和浏览器的简单,灵活,有趣的 javascript 测试框架。

Jest – 令人愉快的 JavaScript 测试。

fast-check – 使用 TypeScript 编写的 JavaScript 属性测试框架。

sinon – 在测试中提供独立的 spies, stub, mock 功能,通过所谓的测试替代(test-double)轻松消除测试的复杂度。

ts-jest – 用 Jest 测试 TypeScript 。

StrykerJS – JavaScript 变异测试。

testdouble.js – 精心设计的测试替身库。

软件测试常用的测试工具(推荐这4个测试工具)

React

Enzyme – 用于 React 的 JavaScript 测试实用程序。

React Testing Library – 简单而完整的 React DOM 测试实用程序,鼓励良好的测试实践。

软件测试常用的测试工具(推荐这4个测试工具)

react-cosmos – 用于隔离开发和测试 UI 组件的沙箱。

Node.js

ava – Node.js 测试运行器。

软件测试常用的测试工具(推荐这4个测试工具)

rewire – 轻松的进行 Node.js 单元测试。

jasmine – 用于浏览器和 node.js 的简单 JavaScript 测试框架。

node-tap – A TAP test framework for Node.js。

Android

Robolectric – Android 单元测试框架。

Truth – Java 和 Android 的流畅断言,类似 AssertJ。

Bash

Bats-core – Bash 自动化测试系统。

shUnit2 – 基于xUnit的单元测试框架。

软件测试常用的测试工具(推荐这4个测试工具)

Java

JUnit 5:下一代 JUnit。

软件测试常用的测试工具(推荐这4个测试工具)

TestNG:TestNG 是一个受 JUnit 和 NUnit 启发的测试框架,但引入了一些使其更强大和更易于使用的新功能。

Truth:使你的测试断言和失败消息更具可读性。

Kotlin

Kotest:灵活而全面的 Kotlin 测试工具。

Android

Robolectric:Android 单元测试框架。

5.4 通用框架

robotframework – 用于验收测试和RPA的通用自动化框架。

taurus – 通过自动化友好的框架进行连续测试。

软件测试常用的测试工具(推荐这4个测试工具)

5.5 测试报告通用

Allure – 灵活的轻量级多语言测试报告工具。

iOS

XCTestHTMLReport – 用于单元和 UI 测试的类似 Xcode 的 HTML 报告。

5.6 静态检查通用

SonarQube – 流行的代码扫描平台。

软件测试常用的测试工具(推荐这4个测试工具)

Semgrep – 多种语言的轻量级静态分析。

软件测试常用的测试工具(推荐这4个测试工具)

Infer – 用于 Java、C、C 和 Objective-C 的静态分析器。(facebook)

pmd – 一个可扩展的多语言静态代码分析器。

Shell

ShellCheck – Shell 静态分析工具。

Java

Checkstyle – 帮助程序员编写符合编码标准的 Java 代码。它支持 Google Java 样式指南和 Sun 代码约定,但具有高度可配置性。

JavaScript

eslint – 查找并修复 JavaScript 代码中的问题。

standard – JavaScript 风格指南,带有 linter 和自动代码修复器。

软件测试常用的测试工具(推荐这4个测试工具)

Python

pyre-check – Facebook出品的静态类型检查器。

pytype – Google 出品的静态类型检查器。

pyright – 微软出品的静态类型检查器。

Mymy – Python 官方的静态类型检查器。

5.7 图像对比

pixelmatch:最小、最简单、最快的 JavaScript 像素级图像比较库。

odiff:号称是世界上最快的逐像素图像视觉差异工具。

六. 不错的学习资料

Awesome JMeter – 涵盖 JMeter 使用不同方面的资源集合。

Software Quality Wiki – 软件质量维基百科。

软件测试常用的测试工具(推荐这4个测试工具)

Awesome Cucumber – Cucumber 和 Gherkin 相关资源列表。

软件测试常用的测试工具(推荐这4个测试工具)

Awesome Selenium – 很棒的 Selenium 资源列表。

How They Test – 那些著名的软件公司是如何测试的?

Awesome Visual Regression Testing – 很棒的视觉回归测试工具。

javascript-testing-best-practices – 全面详尽的 JavaScript 和 Node.js 测试最佳实践。

static-analysis – 适用于所有编程语言、配置文件、构建工具等的静态分析 (SAST) 工具的精选列表。

Awesome Guidelines – 高质量编码风格约定和标准的精选列表。

(完)

重磅消息:全栈测试开发训练营2022年最新一期,火热招生中,有需要全方方提升测试开发软、硬技能的读者,欢迎报名咨询,目前报名有优惠,详细介绍可见:重磅消息 | 2022年最新全栈测试开发技能实战指南(第3期)

END

发表评论

登录后才能评论