【2023必看】17个值得关注的测试开源项目大盘点

article/2025/11/7 3:48:40

目录

引言

项目汇总

值得关注的项目

总结


引言

在软件测试领域,开源项目已经成为了一个重要的趋势。

作为测试人员,我们可以通过参与或关注这些开源项目,不仅可以学习到先进的测试思想、技术和工具,还可以积极参与社区建设,提高自己的影响力和竞争力。

今天,我将为大家盘点2022年17大值得关注的测试开源项目,这些项目覆盖了各种测试领域和方向,相信对于每一位测试人员都有很大的启发和帮助。让我们一起来往下了解了解吧。

testerhome发起了2022年开源项目评选,最终入围的有17个开源项目。

其中一些被广泛熟知的项目,例如 Airtest、Httprunner、MeterSphere,也有一些新的值得关注的项目,例如sonic、lyrebird等。

项目汇总

项目开源平台类型starcommitsaddress
OpenHarmony Wukonggitee工具595wukong: OpenHarmony稳定性测试自动化工具,通过模拟无序的用户行为,对OpenHarmony系统及应用进行稳定性压力测试。
OpenHarmony arkXtestgitee框架12114arkXtest: OpenHarmony Test Framework | OpenHarmony 自动化测试框架
hrun4jgithub工具142183https://github.com/lematechvip/hrun4j
HttpRunnergithub工具3.1k2862GitHub - httprunner/httprunner: HttpRunner 是一个开源的 API 测试工具,支持 HTTP(S) / HTTP2 / WebSocket / RPC 等网络协议,涵盖接口测试、性能测试、数字体验监测等测试类型。简单易用,功能强大,具有丰富的插件化机制和高度的可扩展能力。
Airtestgithub工具6.2k738https://github.com/AirtestProject/Airtest
MeterSpheregithub平台7.7k12022GitHub - metersphere/metersphere: MeterSphere 是一站式开源持续测试平台,覆盖测试管理、接口测试、UI 测试和性能测试等。搞测试,就选 MeterSphere!
sonicgithub平台1.2k344https://github.com/SonicCloudOrg/sonic-server
react-agiletc-minder-editorgithub工具1216https://github.com/sxyy/react-agiletc-minder-editor
mobileperfgithub工具49023https://github.com/alibaba/mobileperf
garbeventsgithub工具85121https://github.com/Pactortester/garbevents
swaggerjmxgithub工具7663GitHub - Pactortester/swaggerjmx: Swagger/YApi convert jmx tool.
流马github平台3018https://github.com/Chras-fu/Liuma-engine
seldomQAgithub框架609813GitHub - SeldomQA/seldom: Seldom automation testing framework based on unittest
SoloPigithub工具4.7k203GitHub - alipay/SoloPi: SoloPi 自动化测试工具
LuckyFramegitee平台2.7k454LuckyFrameWeb: LuckyFrame测试平台是一款免费开源的测试平台,最大的特点是全纬度覆盖了接口自动化、WEB UI自动化、APP自动化,并且支持分布式测试,测试关键字驱动也很大程度上解决了测试同学代码基础弱的问题。同时也集成了质量管理相关的一些功能,解决QA的日常工作中,项目过程数据的收集问题,并能展示一些简单质量报表。更多功能可以关注公众号或是访问官网了解哦。
Takingithub平台1.1k145GitHub - shulieTech/Takin: Takin is an Java-based, open-source system designed to measure online environmental performance test for full-links, Especially for microservices. Through Takin, middlewares and applications can identify real online traffic and test traffic, ensure that they enter the right databases.
lyrebirdgithub平台912399https://github.com/Meituan-Dianping/lyrebird

说明:

  1. star 和 commits 会有变化,统计截止时间:2022.6.9 23:00:00

  2. 由多个子项目组成的项目,这里选取多star 的一个,例如 airtest、sonic、seldomQA都是由多个项目组成的。

  3. commits 是项目的提交次数,一方面可以拿来和star 对比,另一方面反应作者对项目的投入(大多开源项目都是靠爱发电)。

值得关注的项目

  • OpenHarmony Wukong
  • OpenHarmony arkXtest

这两个项目是针对OpenHarmony 操作系统的项目;Wukong 是一个Monkey 测试工具;arkXtest是测试框架;对于 OpenHarmony 操作系统来说,这个配套的工具非常重要。

  • HttpRunner

无需多言,非常成熟的接口自动化测试工具,作者多年来对于项目的投入也是值得肯定的,随着,Htpprunner 4.0 的发布,在接口性能测试、多协议方面更进一步。

  • hrun4j

一个定位于java版本的Httprunner。

  • Airtest

移动自动化测试工具,它所提供的图像识别功能为移动端UI定位带来了很大便利。虽然,他不是第一个提供图像识别的工具。

  • MeterSphere

由专门的公司维护,使它在各种开源测试平台中脱颖而出,从star 和 commits 也可以看出项目的维护非常积极。比起 个人的开源平台从功能、易用性、成熟度上都有很大的优势。

  • sonic

我愿称其为2022年最佳开源项目;远程云真机平台已经不算特别新鲜的技术了。但是,作者远程云真机平台做到了企业级的水平,甚至媲美各大收费的云真机平台,而且提供了更加丰富的一些功能。简直是普惠了许多中小企业。

  • react-agiletc-minder-editor

AgileTC是一个开源的用例管理平台。react-agiletc-minder-editor可以看作是 AgileTC 的子项目,基于基于React的脑图编辑器。

  • MobilePerf

基于python实现的Android性能测试工具。可是,已经两年没有维护了。emmm...

  • garbevents

埋点数据测试工具。对于互联网产品来说,埋点测试非常重要,往往也会占用测试人员不少时间。他可以辅助测试人员更容易地进行埋点测试。

  • swaggerjmx

可以将Swagger/YApi接口文档转成JMeter工具的脚本.jmx

  • 流马

一款简单易用、快速实现的自动化测试平台,将 API/WEB/APP自动化测试一套方案搞定。从平台提供的功能来看比较简单。用平台去做API/WEB/APP测试,理想很美好,真正用于生产环境做面临的挑战会很多。

  • seldomQA

基于unittest的 Web UI/HTTP 自动化测试框架。seldom的目标是打造一套完整的自动化测试方案。

  • 由几个子项目组成:
    • seldom
      基于unittest开发的测试框架。seldom 1.x 支持Web自动化测试, seldom 2.x 支持http接口测试,seldom 3.x 支持App测试(开发中...)。
    • XTestRunner
      基于unittest实现的高颜值HTML测试报告。
    • poium
      用于实现page objects模式的测试库。
    • seldom-platform (开发中...)
      基于seldom框架实现的测试平台,可以读取代码中的 文件、类、方法展示到web页面上。
  • SoloPi

一个无线化、非侵入式的 Android 自动化工具,拥有录制回放、性能测试、一机多控三项主要功能。 这个项目2020年11月停止维护,直到2022年5月继续维护。

  • LuckyFrame

一款免费开源的测试平台,最大的特点是全维度覆盖了接口自动化、WEB UI 自动化、APP 自动化。 从定位上和流马类似,功能上要更加丰富。

  • Takin

Takin 是一套生产全链路压测的系统,可以在无业务代码侵入的情况下,嵌入到各个应用程序节点,实现生产环境的全链路性能测试,适用于复杂的微服务架构系统。 从实现方案上 和 MeterSphere 有些类似,都是基于JMeter实现的压测平台。可惜项目已经9个月没有维护了。

  • Lyrebird

一个基于拦截以及模拟 HTTP/HTTPS 网络请求的面向移动应用的插件式测试平台。可以通过插件扩展能力,实现埋点自动测试、API 覆盖率统计、移动设备及 App 控制和信息记录、自定义检查脚本等一系列功能。 这是一个非常值得关注的项目。

总结

首先,所有的开源项目都是应该被鼓励的,做开源的同学知道需要极大的热情和时间精力投入。

其次,我个人觉得2022年最优秀的项目 sonic和 lyredird,这两个平台项目功能鲜明。而且,都在积极维护中。

最后,当然是要为 seldomQA 项目拉拉票了。seldomQA 在2022年得到了快速的发展,也正在被越来越多的公司使用(包括我们公司自己), seldomQA有着自己的定位和发展规划,未来会带来更多好用的功能。

-------------------------------------------------

这篇贴子到这里就结束了,最后,希望看这篇帖子的朋友能够有所收获。

都到这了记得三连支持一下吧。

-------------------------------------------------

完整版文档下载方式:

这些资料,对于从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享。

在评论区和我互动交流或者私❤我【软件测试学习】领取即可,拿走不谢。

 


http://chatgpt.dhexx.cn/article/UE7jrsyY.shtml

相关文章

测试自学人必看:软件测试如何找测试项目?

目录 前言 方法一:自己找一些开源的开发/测试项目 方法二:从一些线上课程里找开发项目,付费和免费的都可以 方法三:报测试培训班,机构会提供测试项目。 结语 前言 测试新手不知道上哪找测试项目,这应…

【Linux 下】 信号量

文章目录 【Linux 下】 信号量信号量概念信号量操作初始化和销毁P()操作V()操作理解PV操作 基于信号量与环形队列实现的CS模型基于信号量和环形队列实现的生产者与消费者模型 【Linux 下】 信号量 信号量概念 信号量(…

Linux 信号量

信号量 信号量信号量的定义信号量理论例子Linux信号量机制使用信号量 信号量 信号量:用于管理对资源的访问。 (1) 当我们编写的程序使用了线程时,不管它是运行在多用户系统上、多进程系统上,还是运行在多用户多进程系统上,我们通…

Linux内核信号量:二值信号量/互斥信号量,计数信号量,读写信号量

《semaphore信号量:一个简单的示例程序》用户态程序 目录 概念 应用场景 使用方法 内核信号量的构成 信号量的API 初始化 PV操作 获取信号量(P) 释放内核信号量(V) 补充 内核信号量的使用例程 场景1 场景…

Linux系统中信号量的基本使用方法

大家好,今天主要和大家聊一聊,如何使用信号量的方法。 目录 第一: 父子进程相隔1s报数一次 第二:利用信号量实现父子进程通信 信号量(Semaphore),有时被称为信号灯,是在多线程环境下使用的一种设施&#…

信号量【Linux】

文章目录 1. POSIX信号量1.1 引入1.2 概念1.3 PV原语(原理)1.4 相关接口 2. 二进制信号量3. 基于环形队列的生产消费模式3.1 介绍3.2 为什么要使用环形队列3.3 环形队列的作用3.4 实现互斥和同步两个信号量框架生产和消费的逻辑完善环形队列1信号量完善环…

Linux信号量操作

信号量简介: 在对于临界区资源管理的过程中,多个程序同时访问一个共享资源经常容易引发一系列问题:如死锁,结果不唯一等等,在1965年,由荷兰科学家E.W.Dijkstra提出了一种新的进程同步工具,信号…

【关于Linux中----信号量及其使用场景】

文章目录 一、解释信号量1.1 概念的引入1.2 信号量操作和使用接口 二、信号量使用场景2.1 引入环形队列&&生产消费问题2.2 代码实现2.3 对于多生产多消费的情况2.4 申请信号量和加锁的顺序问题2.5 多生产多消费的意义 一、解释信号量 1.1 概念的引入 我们知道&#x…

linux(信号量)

信号量 几个基本概念临界资源临界区原子性互斥 信号量后台进程前台进程 信号储存信号处理信号(信号捕捉) 发送信号1、键盘产生:2、系统调用接口发送信号3、由软件条件产生信号4、硬件异常发送信号 内核中的信号量**信号量在内核中的数据结构****信号集操作函数** 信…

Linux--信号量

1.信号量的定义: 信号量是一个特殊的变量,一般取正数值。它的值代表允许访问的资源数目, 获取资源时,需要对信号量的值进行原子减一,该操作被称为p操作。当信号量值为0时,代表没有资源可用,p操作会阻塞。释…

【Linux】Linux的信号量集

所谓信号量集,就是由多个信号量组成的一个数组。作为一个整体,信号量集中的所有信号量使用同一个等待队列。Linux的信号量集为进程请求多个资源创造了条件。Linux规定,当进程的一个操作需要多个共享资源时,如果只成功获得了其中的…

linux信号量简介

一、什么是信号量 为了防止多个程序同时访问一个共享资源而引发的一系列问题,我们需要一种访问机制,它可以通过生成并使用令牌来授权,在同一时刻只能有一个线程访问代码的临界区域。 临界区域是指执行数据更新的代码需要独占式地执行。而信…

Linux下信号量使用总结

目录 1.Linux下信号量简介 2.POSIX信号量 2.1 无名信号量 2.2 有名信号量 3.System V信号量 1.Linux下信号量简介 信号量是解决进程之间的同步与互斥的IPC机制,互斥与同步关系存在的症结在于临界资源。 临界资源是在同一个时刻只容许有限个(一般只有…

Linux信号量详解

Linux信号量详解 1.什么是信号量信号量是一种特殊的变量,访问具有原子性。只允许对它进行两个操作:1)等待信号量当信号量值为0时,程序等待;当信号量值大于0时,信号量减1,程序继续运行。2)发送信号量将信号量…

Linux进程间通信—信号量

一、概述 进程间通信(interprocess communication,简称 IPC)指两个进程之间的通信。系统中的每一个进程都有各自的地址空间,并且相互独立、隔离,每个进程都处于自己的地址空间中。所以同一个进程的不同模块譬如不同的函…

Linux操作系统-信号量

信号量也属于一种进程间通信的机制,与其他的进程间通信不同,信号量不是用来传输数据的,而是用来进程间同步与互斥。除此之外,信号量还可以实现线程间的互斥。 信号量是什么? 信号量的本质是一个计数器。 一个信号量…

Linux·信号量全解

目录 信号量 进程间 【无名信号量完成 有血缘关系的进程间 互斥】 知识点2【有名信号量 没有血缘进程互斥】 1、创建一个有名信号量 2、信号量的关闭: 3、信号量文件的删除 4、P操作 sem_wait V操作sem_post 销毁信号量sem_destroy 知识点3【有名信号量 没…

Linux-----信号量

信号量 信号量原理信号量概念信号量函数基于环形队列的生产消费模型空间和数据资源生产者和消费者申请、释放信号量模拟实现基于环形队列的生产者消费者模型 信号量原理 之前我们知道被多个执行流同时访问的公共资源叫做临界资源,而临界资源不保护的话会造成数据不…

Linux信号量

文章目录 POSIX信号量信号量的原理信号量的概念信号量函数 二元信号量模拟实现互斥功能基于环形队列的生产消费模型空间资源和数据资源生产者和消费者申请和释放资源必须遵守的两个规则代码实现信号量保护环形队列的原理 POSIX信号量 信号量的原理 我们将可能会被多个执行流同…

Linux —— 信号量

目录 一、POSIX信号量 1. 什么是信号量 2. 信号量的基本原理 二、与信号量相关的操作 1. 初始化信号量 2. 销毁信号量 3. 等待信号量 4. 发布信号量 三、基于环形队列的生产者消费者模型 1. 空间资源和数据资源 2. 生产者和消费者申请和释放资源 四、模拟实现基于…