Test-OpenSource-List

Quality Assurance OpenSource List

Platform

  • Metersphere : An open source continuous testing platform. MeterSphere 是一站式的开源企业级持续测试平台,涵盖测试跟踪、接口测试、性能测试、团队协作等功能,全面兼容 JMeter、Postman 等开源、主流标准。

  • Gauge : Gauge is a light weight cross-platform test automation tool. It provides the ability to author test cases in the business language.

  • Karate : Karate is the only open-source tool to combine API test-automation, mocks, performance-testing and even UI automation into a single, unified framework. The BDD syntax popularized by Cucumber is language-neutral, and easy for even non-programmers. Powerful JSON & XML assertions are built-in, and you can run tests in parallel for speed.

API Test

  • Mock.js : 生成随机数据,拦截 Ajax 请求

  • Step CI : Step CI is an open-source tool, which helps you automate API testing and monitoring.

  • Prism : Turn any OpenAPI2/3 and Postman Collection file into an API server with mocking, transformations and validations.

  • newman : Manage all of your organization’s APIs in Postman, with the industry’s most complete API development environment.

  • HttpRunner : HttpRunner 是一个开源的 API 测试工具,支持 HTTP(S) / HTTP2 / WebSocket / RPC 等网络协议,涵盖接口测试、性能测试、数字体验监测等测试类型。简单易用,功能强大,具有丰富的插件化机制和高度的可扩展能力。

  • Hurl : Hurl is a command line tool that runs HTTP requests defined in a simple plain text format.

Load Testing

  • wrk : wrk is a modern HTTP benchmarking tool capable of generating significant load when run on a single multi-core CPU.

  • Webbench : Webbench 是 Radim Kolar 在 1997 年写的一个在 linux 下使用的非常简单的网站压测工具。它使用 fork() 模拟多个客户端同时访问我们设定的 URL,测试网站在压力下工作的性能,最多可以模拟 3 万个并发连接去测试网站的负载能力。

  • Vegeta : HTTP load testing tool and library. It’s over 9000!

  • Locust : Scalable user load testing tool written in Python

  • k6 : k6 is a modern load testing tool, building on Load Impact’s years of experience. It provides a clean, approachable scripting API, distributed and cloud execution, and orchestration via a REST API.

  • plow : A high-performance HTTP benchmarking tool with real-time web UI and terminal displaying.

Fuzz & Diff

  • Twitter-Diffy : 比较新老系统之间服务差异

  • FuzzBench : FuzzBench is a free service that evaluates fuzzers on a wide variety of real-world benchmarks, at Google scale.

Mock

Data Generator

Database

  • open-source-database-testing-tools

  • TPC-DS : The TPC Benchmark DS (TPC-DS) is a decision support benchmark that models several generally applicable aspects of a decision support system, including queries and data maintenance.

  • Great Expectations : Great Expectations helps data teams eliminate pipeline debt, through data testing, documentation, and profiling.

System Test

  • fio : Hence I needed a tool that would be able to simulate a given IO workload without resorting to writing a tailored test case again and again.

Chaos Engineering

  • Jepsen : A framework for distributed systems verification, with fault injection.

  • ChaosBlade : ChaosBlade 是一款遵循混沌工程实验原理,提供丰富故障场景实现,帮助分布式系统提升容错性和可恢复性的混沌工程工具,可实现底层故障的注入,特点是操作简洁、无侵入、扩展性强。

  • Chaos Mesh : Chaos Mesh is a cloud-native Chaos Engineering platform that orchestrates chaos on Kubernetes environments.

  • Pumba : Chaos testing, network emulation and stress testing tool for containers.

  • Litmus : Chaos engineering is fundamental to increasing the resilience of today’s cloud native, highly dynamic applications and infrastructure. Kubernetes developers and SREs use Litmus to create, manage and monitor chaos workflows by extending Kubernetes itself.

E2E Test | 端到端测试

Web App

  • Cypress : Fast, easy and reliable testing for anything that runs in a browser.

  • Wraith : A responsive screenshot comparison tool.

  • Gremlins.js : Monkey testing library for web apps and Node.js.

Cross Browser Test | 跨浏览器测试

  • Airtap : Airtap is an easy way to test your JavaScript in browsers, using a TAP-producing harness like tap or tape.

Mobile App

  • Auto.js : A UiAutomator on android, does not need root access(安卓平台上的 JavaScript 自动化工具)

Acceptance Test | 接受度测试

  • CodeceptJS : CodeceptJS is a new testing framework for end-to-end testing with WebDriver (or others). It abstracts browser interaction to simple steps which is written from a user perspective.

  • Capybara : Capybara helps you test web applications by simulating how a real user would interact with your app. It is agnostic about the driver running your tests and comes with Rack::Test and Selenium support built in. WebKit is supported through an external gem.

Page Comparison | 界面比较

  • Blink-Diff : A lightweight image comparison tool.

  • Gemini : Gemini is a utility for regression testing the visual appearance of web pages.

  • PhantomCSS : CSS regression testing.

  • garris/BackstopJS : BackstopJS automates visual regression testing of your responsive web UI by comparing DOM screenshots over time.

  • 2022-Touca : Touca helps engineering teams find the unintended side-effects of their day to day code changes. It remotely compares the behavior and performance of your software against a previous trusted version and visualizes differences in near real-time.

上一页