软件测试工具大全

参考:https://mp.weixin.qq.com/s/H_zNmpahULdSVfmGlW1VoQ

临近年底,软件测试工具****大全经过一年的更新,终于可以发布了。此版本将作为基准,后续仍会持续更新,为大家呈现更多优秀的测试工具。完整版在语雀上,结构更清晰,点击阅读原文即可查看。

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

一. 大前端

1.1 移动端

抓包工具

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

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

  • nohost - 基于 Whistle 实现的多账号多环境远程配置及抓包调试平台。

性能测试

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

  • mobileperf - 基于 Python 实现的 Android 性能采集工具。

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

  • **LoliProfiler**** - **用于 Android 游戏和应用程序的C/C ++ 内存分析工具。

  • MemoryLeakDetector - 西瓜视频安卓团队开发的原生内存泄漏监控工具。

  • Tailor - 西瓜视频安卓团队开发的一款通用的 hprof 裁剪压缩工具。

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

自动化

跨平台

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

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

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

Android

  • SoloPi - 支持录制回放、一机多控和性能测试的 Android 自动化测试工具。

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

  • minicap - 从 Android 设备中流式传输实时屏幕捕获数据。

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

  • python-adb - Python ADB + Fastboot实现。

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

  • ADB Enhanced - 增强 ADB 命令。

  • uiautomator2 - Android Uiautomator2 Python包装器。

  • Moby - E2E 测试框架,用于具有复杂环境要求的测试。

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

  • Fastbot-Android - Android APP 稳定性测试工具

  • Shot - 适用于 Android 的屏幕截图测试库。
    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 稳定性测试工具。

  • Mixbox - iOS UI 测试框架。

微信小程序

  • Minium - 微信小程序自动化框架, 提供了 Python 和 JavaScript 版本。

测试平台

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

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

  • **DoraemonKit**** - **一款功能齐全的客户端( iOS 、Android、微信小程序、Flutter )研发助手。(滴滴)[图片上传中...(image-d65ce7-1638878578393-21)]

1.2 Web端

自动化

  • cypress - 对浏览器中运行的所有内容进行快速,轻松和可靠的测试。[图片上传中...(image-f3a8d3-1638878578393-20)]

  • qawolf - 将浏览器的测试速度提高了 10 倍。[图片上传失败...(image-ea8e4-1638878578397)]

  • TestCafe - 基于 Node.js 的端到端 Web 自动化测试工具。[图片上传中...(image-ce6225-1638878578393-19)]

  • Helium - 用于 Web 自动化的最佳 Python 库。[图片上传中...(image-d042d3-1638878578393-18)]

  • Selenoid - 使用 Docker 容器启动浏览器的 Selenium hub的强大实现。[图片上传中...(image-b9a06e-1638878578393-17)]

  • Capybara - Web 应用程序的验收测试框架。[图片上传中...(image-f2bdcc-1638878578393-16)]

  • selenide - 使用 Java 进行简洁的 UI 测试。[图片上传中...(image-14cea0-1638878578393-15)]

  • splinter - 用于 Web 应用程序的 Python 测试框架。[图片上传中...(image-ac233a-1638878578393-14)]

  • gauge - 提供可靠的浏览器自动化测试框架。[图片上传中...(image-ca3136-1638878578393-13)]

  • Headless recorder - 记录浏览器交互并生成 Puppeteer 或 Playwright 脚本。[图片上传中...(image-426fbe-1638878578393-12)]

  • Selenium - 浏览器自动化框架和生态系统。[图片上传中...(image-c154f9-1638878578393-11)]

  • WebDriverManager - Selenium WebDriver 的自动化驱动程序管理。[图片上传中...(image-971965-1638878578393-10)]

  • Selenium Wire - 能够检测出浏览器发出的请求。[图片上传中...(image-8f719b-1638878578393-9)]

  • tape - 用于 node 和浏览器的 tap-production 测试工具。[图片上传中...(image-f565c1-1638878578393-8)]

稳定性

  • gremlins.js - 用于 Web 应用程序和 Node.js 的 Monkey 测试库。[图片上传中...(image-a92e8a-1638878578393-7)]

性能

  • Front-End-Performance-Checklist - 唯一一个运行速度快于其他的前端性能检查表。[图片上传中...(image-f4be9d-1638878578393-6)]

其他

  • jsoup - Java HTML 解析器。[图片上传中...(image-20786f-1638878578393-5)]

1.3 PC端

跨平台

  • Spectron - 使用 ChromeDriver 和 WebdriverIO 轻松测试你的 Electron 应用程序 。[图片上传中...(image-cc075-1638878578393-4)]

  • TagUI - 免费的 RPA 工具。[图片上传中...(image-9f1421-1638878578393-3)]

  • RPA-Python - 用 Python 编写 RPA。[图片上传中...(image-9c230-1638878578393-2)]

  • PyAutoGUI - 跨平台的 GUI 测试工具。[图片上传中...(image-54f4ba-1638878578393-1)]

Windows

  • pywinauto - 基于 Python 的 Windows GUI 自动化。[图片上传中...(image-7c2092-1638878578393-0)]

macOS

二. 服务端

2.1 接口测试

Mock

  • vcrpy - 自动模拟 HTTP 交互。[图片上传失败...(image-90de1f-1638878578396)]

  • Mockoon - 本地运行模拟 API 的最简单,最快的方法。[图片上传失败...(image-e3c51a-1638878578396)]

  • hoverfly - 轻量级服务虚拟化/API 模拟工具。[图片上传失败...(image-bd2385-1638878578396)]

抓包

  • Fiddler - 跨平台的 Web 调试代理工具。[图片上传失败...(image-68d817-1638878578396)]

  • mitmproxy - 交互式 HTTPS 代理,支持 PC 和 APP 抓包。[图片上传失败...(image-4b146b-1638878578396)]

平台/GUI工具

  • Postman - API 开发协作平台。[图片上传失败...(image-bd7a09-1638878578396)]

  • YApi - 可本地部署的、打通前后端及测试的可视化的接口管理平台。[图片上传失败...(image-739bd3-1638878578396)]说明

[图片上传中...(image-ab046c-1638878619846-1)]

表示开源****软件

[图片上传中...(image-bd67e-1638878619846-0)]

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

  • hoppscotch - 类似 Postman 的开源 API 开发协作平台。[图片上传失败...(image-70e29a-1638878578396)]

  • Postcode - 类似 Postman 的 VS Code 插件。[图片上传失败...(image-f87b6e-1638878578396)]

  • Katalon Studio - 用于 Web、移动和 API 测试的最佳自动化测试工具。[图片上传失败...(image-b10401-1638878578396)]

  • MeterSphere - 一站式开源持续测试平台。[图片上传失败...(image-479c7a-1638878578396)]

流量回放

  • GoReplay - 使用 go 开发的浏量回放工具。[图片上传失败...(image-595a56-1638878578396)]

  • vcr - 记录测试套件的 HTTP 交互,并在以后的测试运行期间重播它们,以进行快速,确定性和准确的测试。[图片上传失败...(image-57210c-1638878578396)]

  • Sharingan - (写轮眼)是一个基于golang的流量录制回放工具。(滴滴)[图片上传失败...(image-4f4ac4-1638878578396)]

  • TCPCopy - 一个 TCP 流重放工具。[图片上传失败...(image-575bb6-1638878578396)]

框架

  • Dredd - 与语言无关的 HTTP API 测试工具。[图片上传失败...(image-834fb-1638878578396)]

  • HttpRunner* - *一个简单,优雅但功能强大的HTTP(S)测试框架。[图片上传失败...(image-46b824-1638878578396)]

  • hrun4j - 不仅是 Java 版 的 httprunner,而是一站式接口测试解决方案。[图片上传失败...(image-dada21-1638878578396)]

  • rest-assured - Java DSL,可轻松测试 REST 服务。[图片上传失败...(image-e7309c-1638878578396)]

  • Tavern - 用于自动化测试 RESTful API 的命令行工具和 Python 库和 Pytest 插件。[图片上传失败...(image-956456-1638878578396)]

其他

  • HTTPie - 类似 cURL 但用起来更人性化也更强大的 HTTP 命令行工具。[图片上传失败...(image-3ef6cc-1638878578396)]

  • Hurl - 运行以简单纯文本格式定义的HTTP 请求。[图片上传失败...(image-c62060-1638878578396)][图片上传中...(image.png-5a3185-1638878641236-0)]

2.2 数据库

  • DBeaver - 基于 Java 开发的通用数据库管理和开发工具。[图片上传失败...(image-b3c061-1638878578396)]

  • sysbench - 基于 LuaJIT 的可编写脚本的多线程基准测试工具,常用于数据库基准测试。[图片上传失败...(image-663b6-1638878578396)]

2.3 性能测试

  • JMeter - Apache JMeter。[图片上传失败...(image-55da91-1638878578396)]

  • k6 - 使用 Go 和 JavaScript 的现代负载测试工具。[图片上传失败...(image-172065-1638878578396)]

  • ali - 生成 HTTP 负载并实时绘制结果。[图片上传失败...(image-db26f1-1638878578396)]

  • Pumba - Docker 的混沌测试工具。[图片上传失败...(image-5dd29b-1638878578396)]

  • Vegeta - 多功能的 HTTP 负载测试工具。[图片上传失败...(image-3ca0ed-1638878578396)]

  • Locust - 用 Python 编写的可扩展用户负载测试工具。[图片上传失败...(image-b7b473-1638878578396)]

2.4 其他

  • Testinfra - 测试你的基础设施。[图片上传失败...(image-3ea3a4-1638878578396)]

三. 领域测试

3.1 安全测试

  • sqlmap - 自动 SQL 注入和数据库接管工具。[图片上传失败...(image-55bbd4-1638878578396)]

  • Infection Monkey - 一个自动化的渗透测试工具。[图片上传失败...(image-e05ee-1638878578396)]

  • Bandit - 查找 Python 代码中常见安全问题。[图片上传失败...(image-397733-1638878578396)]

3.2 大数据

  • Synth - 声明性数据生成器。[图片上传失败...(image-357c2-1638878578396)]

  • Mimesis - 用于 Python 的高性能假数据生成器,它以多种语言提供用于多种用途的数据。[图片上传中...(image-b50d34-1638878578396-107)]

基准测试

  • YCSB - 云服务基准测试。(雅虎)[图片上传失败...(image-ebc1cd-1638878578396)]

  • HiBench - 大数据基准套件。(英特尔)[图片上传中...(image-f6d74-1638878578396-105)]

工具平台

  • DataQuality - DQ 是一个在大数据环境中构建并行和分布式质量检查的框架。它可用于计算指标并执行检查以确保结构化或非结构化数据的质量。它完全依赖于 Spark。[图片上传中...(image-6867fb-1638878578396-104)]

  • MobyDQ - 在数据管道上自动进行数据质量检查的工具。[图片上传中...(image-29fd62-1638878578396-103)]

  • Great Expectations - 通过数据测试、文档和分析,帮助数据团队消除管道债务。[图片上传中...(image-9f536c-1638878578396-102)]

  • Qualitis - 一个支持多种异构数据源的质量校验、通知、管理服务的数据质量管理平台,用于解决业务系统运行、数据中心建设及数据治理过程中的各种数据质量问题。[图片上传中...(image-669f49-1638878578396-101)]

3.3 人工智能

3.4 混沌工程

  • Chaos Monkey - 一种弹性工具,可帮助应用程序容忍随机实例故障。[图片上传中...(image-bf6558-1638878578396-100)]

  • chaos-monkey-spring-boot - 用于 Spring Boot 的 Chaos Monkey。[图片上传中...(image-23f2b1-1638878578395-99)]

  • kube-monkey - Netflix 的 Chaos Monkey 在 Kubernetes 集群中的实现。[图片上传中...(image-ff8a24-1638878578395-98)]

四. 测试管理

  • AgileTC - 敏捷的测试用例管理平台,支持测试用例管理、执行计划管理、进度计算、多人实时协同等能力。(滴滴)[图片上传中...(image-4acb4a-1638878578395-97)]

  • TestLink - 开源测试和需求管理系统。[图片上传中...(image-83c9a7-1638878578395-96)]

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

五. 测试框架

5.1 Mock

Java

  • Moco - 一个简单的 Mock 工具。[图片上传中...(image-a4f818-1638878578395-95)]

  • Mockito - 单元测试的 Mocking 框架。[图片上传中...(image-e29dce-1638878578395-94)]

  • WireMock - 适用于所有场合的 Web 服务测试替身。[图片上传中...(image-1229c8-1638878578395-93)]

Python

  • pytest-mock - 与 pytest 一起使用的 Mock 工具。[图片上传中...(image-dd4fec-1638878578395-92)]

JavaScript

  • Nock - 适用于 Node.js 的 HTTP Mock 工具。[图片上传中...(image-9250f1-1638878578395-91)]

  • msw - Mock Service Worker (MSW) 是一个用于浏览器和 Node.js 的 API 模拟库。[图片上传中...(image-5fde36-1638878578395-90)]

Kotlin

  • Mockk - Kotlin 的模拟库。[图片上传中...(image-77ec2a-1638878578395-89)]

Golang

  • mockery - Golang 的模拟代码自动生成器。[图片上传中...(image-606dbc-1638878578395-88)]

5.2 覆盖率

Java

  • Super-Jacoco - 基于 Jacoco、Git 二次开发打造的一站式 JAVA 代码全量/diff 覆盖率收集平台。(滴滴)[图片上传中...(image-290dde-1638878578395-87)]

Python

  • pytest-cov - 与 pytest 一起使用的覆盖率插件。[图片上传中...(image-6970f8-1638878578395-86)]

  • HTTPretty - Python 的 HTTP 客户端模拟工具。[图片上传中...(image-7ae929-1638878578395-85)]

5.3 单元测试

Python

  • pytest - 最流行的 Python 测试框架。[图片上传中...(image-7d6b72-1638878578395-84)]

Swift

  • Quick - Swift(和 Objective-C)测试框架。[图片上传中...(image-c4975d-1638878578395-83)]

JavaScript

  • Mocha - 用于 node.js 和浏览器的简单,灵活,有趣的 javascript 测试框架。[图片上传中...(image-8f1118-1638878578395-82)]

  • Jest - 令人愉快的 JavaScript 测试。[图片上传中...(image-e40a62-1638878578395-81)]

  • fast-check - 使用 TypeScript 编写的 JavaScript 属性测试框架。[图片上传中...(image-41ce7d-1638878578395-80)]

  • sinon - 在测试中提供独立的 spies, stub, mock 功能,通过所谓的测试替代(test-double)轻松消除测试的复杂度。[图片上传中...(image-c52cb7-1638878578395-79)]

  • ts-jest - 用 Jest 测试 TypeScript 。[图片上传中...(image-1a66df-1638878578394-78)]

  • StrykerJS - JavaScript 变异测试。[图片上传中...(image-5c5882-1638878578394-77)]

  • testdouble.js - 精心设计的测试替身库。[图片上传中...(image-b6fad1-1638878578394-76)]

React

  • Enzyme - 用于 React 的 JavaScript 测试实用程序。[图片上传中...(image-efbea8-1638878578394-75)]

  • React Testing Library - 简单而完整的 React DOM 测试实用程序,鼓励良好的测试实践。[图片上传中...(image-de0d8f-1638878578394-74)]

  • react-cosmos - 用于隔离开发和测试 UI 组件的沙箱。[图片上传中...(image-636c53-1638878578394-73)]

Node.js

  • ava - Node.js 测试运行器。[图片上传中...(image-2a51b3-1638878578394-72)]

  • rewire - 轻松的进行 Node.js 单元测试。[图片上传中...(image-ec71ab-1638878578394-71)]

  • jasmine - 用于浏览器和 node.js 的简单 JavaScript 测试框架。[图片上传中...(image-185c17-1638878578394-70)]

  • node-tap - A TAP test framework for Node.js。[图片上传中...(image-beb48-1638878578394-69)]

Android

  • Robolectric - Android 单元测试框架。[图片上传中...(image-bdd79a-1638878578394-68)]

  • Truth - Java 和 Android 的流畅断言,类似 AssertJ。[图片上传中...(image-9996d6-1638878578394-67)]

Bash

  • Bats-core - Bash 自动化测试系统。[图片上传中...(image-4ba6e3-1638878578394-66)]

  • shUnit2 - 基于xUnit的单元测试框架。[图片上传中...(image-d5d3ae-1638878578394-65)]

Java

  • JUnit 5:下一代 JUnit。[图片上传中...(image-48272c-1638878578394-64)]

  • TestNG:TestNG 是一个受 JUnit 和 NUnit 启发的测试框架,但引入了一些使其更强大和更易于使用的新功能。[图片上传中...(image-eee8ae-1638878578394-63)]

  • Truth:使你的测试断言和失败消息更具可读性。[图片上传中...(image-b61f49-1638878578394-62)]

Kotlin

  • Kotest****:灵活而全面的 Kotlin 测试工具。[图片上传中...(image-10af8-1638878578394-61)]

Android

  • Robolectric:Android 单元测试框架。[图片上传中...(image-73d920-1638878578394-60)]

5.4 通用框架

  • robotframework - 用于验收测试和RPA的通用自动化框架。[图片上传中...(image-240116-1638878578394-59)]

  • taurus - 通过自动化友好的框架进行连续测试。[图片上传中...(image-683dac-1638878578394-58)]

5.5 测试报告

通用

  • Allure - 灵活的轻量级多语言测试报告工具。[图片上传中...(image-2d57b6-1638878578394-57)]

iOS

  • XCTestHTMLReport - 用于单元和 UI 测试的类似 Xcode 的 HTML 报告。[图片上传中...(image-8012b-1638878578394-56)]

5.6 静态检查

通用

  • SonarQube - 流行的代码扫描平台。[图片上传中...(image-df87e-1638878578394-55)]

  • Semgrep - 多种语言的轻量级静态分析。[图片上传中...(image-feb259-1638878578394-54)]

  • Infer - 用于 Java、C、C++ 和 Objective-C 的静态分析器。(facebook)[图片上传中...(image-98ec52-1638878578394-53)]

  • pmd - 一个可扩展的多语言静态代码分析器。[图片上传中...(image-b23714-1638878578394-52)]

Shell

  • ShellCheck - Shell 静态分析工具。[图片上传中...(image-1ca7a3-1638878578394-51)]

Java

  • Checkstyle - 帮助程序员编写符合编码标准的 Java 代码。它支持 Google Java 样式指南和 Sun 代码约定,但具有高度可配置性。[图片上传中...(image-ab8295-1638878578394-50)]

JavaScript

  • eslint - 查找并修复 JavaScript 代码中的问题。[图片上传中...(image-7cecca-1638878578394-49)]

  • standard - JavaScript 风格指南,带有 linter 和自动代码修复器。[图片上传中...(image-544010-1638878578394-48)]

Python

  • pyre-check - Facebook出品的静态类型检查器。[图片上传中...(image-abb1c-1638878578394-47)]

  • pytype - Google 出品的静态类型检查器。[图片上传中...(image-4b3c8e-1638878578394-46)]

  • pyright - 微软出品的静态类型检查器。[图片上传中...(image-571a4e-1638878578394-45)]

  • Mymy - Python 官方的静态类型检查器。[图片上传中...(image-14e0d-1638878578394-44)]

5.7 图像对比

  • pixelmatch:最小、最简单、最快的 JavaScript 像素级图像比较库。[图片上传中...(image-72e3c3-1638878578394-43)]

  • odiff:号称是世界上最快的逐像素图像视觉差异工具。[图片上传中...(image-95ff45-1638878578394-42)]

六. 不错的学习资料

  • Awesome JMeter - 涵盖 JMeter 使用不同方面的资源集合。[图片上传中...(image-3679-1638878578394-41)]

  • Software Quality Wiki - 软件质量维基百科。[图片上传中...(image-70a014-1638878578394-40)]

  • Awesome Cucumber - Cucumber 和 Gherkin 相关资源列表。[图片上传中...(image-a60862-1638878578394-39)]

  • Awesome Selenium - 很棒的 Selenium 资源列表。[图片上传中...(image-4fe96d-1638878578394-38)]

  • How They Test - 那些著名的软件公司是如何测试的?[图片上传中...(image-e9051c-1638878578394-37)]

  • Awesome Visual Regression Testing - 很棒的视觉回归测试工具。[图片上传中...(image-3a33a1-1638878578394-36)]

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

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

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

(完)

你可能感兴趣的:(软件测试工具大全)