一系列自动化测试的开源项目介绍

本文涉及的产品
性能测试 PTS,5000VUM额度
简介:        在如今开源的时代,我们就不要再闭门造车了,热烈的拥抱开源吧!本文针对性能测试、Web UI 测试、API 测试、数据库测试、接口测试、单元测试等方面,为大家整理了github或码云上优秀的自动化测试开源项目,希望能给大家带来一点帮助。

 版权声明:本文为博主原创文章,未经博主允许不得转载。欢迎访问我的博客 https://blog.csdn.net/smooth00/article/details/8431751

       在如今开源的时代,我们就不要再闭门造车了,热烈的拥抱开源吧!本文针对性能测试、Web UI 测试、API 测试、数据库测试、接口测试、单元测试等方面,为大家整理了github或码云上优秀的自动化测试开源项目,希望能给大家带来一点帮助。

一、性能自动化测试

1、项目名称:基于Jmeter实现的在线压测平台和在线管理Jmeter脚本系统

项目简介:

  • 本项目基于renren-fast Java开发平台开发,内核基于Jmeter-Api和Jmeter脚本实现在线性能压测。

具有如下特点

  • 友好的代码结构及注释,便于阅读及二次开发
  • 实现前后端分离,通过token进行数据交互,前端再也不用关注后端技术
  • 灵活的权限控制,可控制到页面或按钮,满足绝大部分的权限需求
  • 页面交互使用Vue2.x,极大的提高了开发效率
  • 完善的代码生成机制,可在线生成entity、xml、dao、service、html、js、sql代码,减少70%以上的开发任务
  • 引入quartz定时任务,可动态完成任务的添加、修改、删除、暂停、恢复及日志查看等功能
  • 引入API模板,根据token作为登录令牌,极大的方便了APP接口开发
  • 引入Hibernate Validator校验框架,轻松实现后端校验
  • 引入云存储服务,已支持:七牛云、阿里云、腾讯云等
  • 引入swagger文档支持,方便编写API接口文档
  • 引入路由机制,刷新页面会停留在当前页
  • 引入最新版本Jmeter-Api,支持分布式压测,测试报告生成及在线查看下载。
  • 引入Echarts,支持在线观测性能压测结果。


2、项目名称:分布式压力测试工具 Beetle.DT

项目简介:基于 .NET 实现的分布式压力测试工具,用户可以根据需求编写相关的测试用例;通过工具的管理界面即可以把测试用例推送到服务中心,再根据实际压测的需求把测试用例分配到不同节点上运行。工具会根据测试的情况实时获取测试结果,测试完成后用户还可以查询具体的测试报告。节点采用进程隔离的方式运行测试用例,所以测试用例的运行都是相互独立。


3、项目名称:基于 Go 的压力测试工具 armyant

项目简介:armyant 是从 http 压力测试工具 hey 改装而成。不过,hey 只支持 http 接口的压力测试,而 armant 可以自定义压测协议。目前默认实现了 http,mqtt 两种协议的压力测试。

项目地址:https://gitee.com/plug/armyant

二、Web UI 自动化测试

1、项目名称:自动化测试平台 LuckyFrame

项目简介:本项目是一款免费开源的测试平台,最大的特点是全纬度覆盖了接口自动化、WEB UI自动化、APP自动化,并且支持分布式测试,测试关键字驱动也很大程度上解决了测试同学代码基础弱的问题。同时也集成了质量管理相关的一些功能,解决 QA 的日常工作中,项目过程数据的收集问题,并能展示一些简单质量报表。

项目地址:https://gitee.com/seagull1985/LuckyFrameWeb

2、项目名称:AutoLine开源平台

项目简介:AutoLine开源平台是一个开源自动化测试解决方案,基于RobotFramework进行二次开发,支持RobotFramework几乎所有的库。

项目地址:https://gitee.com/lym51/AutoLine

三、API 自动化测试

项目名称:Restful Api 集成测试工具 Hitchhiker

项目简介:Hitchhiker 是一款开源的 Restful Api 测试工具,支持Schedule, 数据对比,压力测试,支持上传脚本定制请求,可以轻松部署到本地,和你的team成员一起管理 Api。

项目地址:https://gitee.com/iwxiaot/Hitchhiker

四、接口自动化测试

1、项目名称:自动化测试平台 phoenixframework

项目简介:phoenixframework 是一个自动化测试平台,集代码托管, 分机(node节点)管理,定时任务,分布式或并发等方式执行通过 phoenix_develop 模块调试好的用例。平台使用 SSH4 开发,覆盖了 webgui,接口,移动mobile 等终端的测试与监控。
目前 webGUI 模块已经完成,兼容 chrome,Firefox,IE,httpunit 以及 phantomjs 驱动。

项目地址:https://gitee.com/phoenixframework/phoenixframework

2、项目名称:TCP/UDP 测试工具 SocketDebugger

项目简介:SocketDebugger 是一款 TCP/UDP 测试工具,并且包括串口转发功能,以及自动回复功能。

项目地址:https://gitee.com/hkiaipc/Socket-Debugger

3、项目名称:HTTP 接口测试插件 ApiDebug

项目简介:ApiDebug 是一个浏览器HTTP接口测试插件,可以用来测试 HTTP、HTTPS接口。支持POST、GET 等方式,同时也支持 json、xml 等自定义接口参数。系统支持保存历史记录,也可同步测试接口至 CrapApi 接口管理系统(登陆 http://api.crap.cn ,点击同步即可保存)。除接口测试外,系统还包含 json 格式化等小工具。


3、项目名称:基于 Java 的 Http 接口测试工具

项目简介:JApiTest 是使用 java 开发的 Http 接口测试工具,以可视化形式通过配置 http 参数访问测试接口,并可对返回结果还有判断。

项目地址:https://gitee.com/penngo/JApiTest

五、数据库自动化测试

项目名称:数据库单元测试框架 xlsunit

项目简介:面向数据库应用的单元测试框架,使用excel,作为输入,以及输出比较,适合大量数据库操作。

如下情况可以使用 xlsunit:

  • 必须使用 Spring 或者 Spring Boot,因为会利用 Spring 单元测试事务回滚机制。

  • 面向数据库应用,特别是一个业务操作,有多个表的变化。

  • xlsunit 支持 Spring 4 以上,SpringBoot1.5 以上,支持 Oracle,MySql,Postgres 等数据库。

项目地址:https://gitee.com/xiandafu/xlsunit

六、数据调优测试

影响系统性能和效率,数据库起到一个非常关键的作用,而SQL的优化又是成本最低的一种优化方式,所以我把这一项也列为测试人员需要关注的方面。

项目名称:soar-web

项目简介:基于小米 soar 的开源 sql 分析与优化的 WEB 图形化工具,支持 soar 配置的添加、修改、复制,多配置切换,配置的导出、导入与导入功能。目前只支持mysql。

项目地址:https://github.com/xiyangxixian/soar-web

项目介绍:10月20日,在开源先锋日(OSCAR DAYS)上,小米将宣布开源自研的SOAR(SQL Optimizer And Rewriter)。

      这是一款智能 SQL 优化和改写工具,开发人员可以直接通过此工具快速的对自己的 SQL 进行质量检查,生成评估报告,防止将问题 SQL 带到线上从而导致服务质量下降。它不仅能够尽可能地提高线上代码质量,还能避免一些由于人为疏漏而带来的隐患。

      SOAR 由语法解析器、集成环境、优化建议、重写逻辑、工具集五大模块组成。它拥有独立的不依赖数据库的 SQL 解析能力,能够通过提供的集成环境对 SQL 本身及数据库环境进行评审,找出可能存在的隐患或问题。

相关实践学习
通过性能测试PTS对云服务器ECS进行规格选择与性能压测
本文为您介绍如何利用性能测试PTS对云服务器ECS进行规格选择与性能压测。
目录
相关文章
|
3天前
|
人工智能 Linux API
PromptWizard:微软开源 AI 提示词自动化优化框架,能够迭代优化提示指令和上下文示例,提升 LLMs 特定任务的表现
PromptWizard 是微软开源的 AI 提示词自动化优化框架,通过自我演变和自我适应机制,迭代优化提示指令和上下文示例,提升大型语言模型(LLMs)在特定任务中的表现。本文详细介绍了 PromptWizard 的主要功能、技术原理以及如何运行该框架。
47 8
PromptWizard:微软开源 AI 提示词自动化优化框架,能够迭代优化提示指令和上下文示例,提升 LLMs 特定任务的表现
|
12天前
|
人工智能 自然语言处理 前端开发
CodeArena:在线 LLM 编程竞技场!用于测试不同开源 LLM 的编程能力,实时更新排行榜
CodeArena 是一个在线平台,用于测试和比较不同大型语言模型(LLM)的编程能力。通过实时显示多个 LLM 的代码生成过程和结果,帮助开发者选择适合的 LLM,并推动 LLM 技术的发展。
42 7
CodeArena:在线 LLM 编程竞技场!用于测试不同开源 LLM 的编程能力,实时更新排行榜
|
28天前
|
机器学习/深度学习 算法 UED
在数据驱动时代,A/B 测试成为评估机器学习项目不同方案效果的重要方法
在数据驱动时代,A/B 测试成为评估机器学习项目不同方案效果的重要方法。本文介绍 A/B 测试的基本概念、步骤及其在模型评估、算法改进、特征选择和用户体验优化中的应用,同时提供 Python 实现示例,强调其在确保项目性能和用户体验方面的关键作用。
33 6
|
1月前
|
关系型数据库 MySQL Java
【Docker最新版教程】一文带你快速入门Docker常见用法,实现容器编排和自动化部署上线项目
Docker快速入门到项目部署,MySQL部署+Nginx部署+docker自定义镜像+docker网络+DockerCompose项目实战一文搞定!
|
1月前
|
机器学习/深度学习 算法 UED
在数据驱动时代,A/B 测试成为评估机器学习项目效果的重要手段
在数据驱动时代,A/B 测试成为评估机器学习项目效果的重要手段。本文介绍了 A/B 测试的基本概念、步骤及其在模型评估、算法改进、特征选择和用户体验优化中的应用,强调了样本量、随机性和时间因素的重要性,并展示了 Python 在 A/B 测试中的具体应用实例。
30 1
|
1月前
|
监控 安全 测试技术
如何在实际项目中应用Python Web开发的安全测试知识?
如何在实际项目中应用Python Web开发的安全测试知识?
32 4
|
1月前
|
网络协议 关系型数据库 应用服务中间件
【项目场景】请求数据时测试环境比生产环境多花了1秒是怎么回事?
这是一位粉丝(谢同学)给V哥的留言,描述了他在优化系统查询时遇到的问题:测试环境优化达标,但生产环境响应时间多出1秒。通过抓包分析,发现MySQL请求和响应之间存在500毫秒的延迟,怀疑是网络传输开销。V哥给出了以下优化建议:
|
2月前
|
测试技术
自动化测试项目学习笔记(五):Pytest结合allure生成测试报告以及重构项目
本文介绍了如何使用Pytest和Allure生成自动化测试报告。通过安装allure-pytest和配置环境,可以生成包含用例描述、步骤、等级等详细信息的美观报告。文章还提供了代码示例和运行指南,以及重构项目时的注意事项。
280 1
自动化测试项目学习笔记(五):Pytest结合allure生成测试报告以及重构项目
|
1月前
|
编解码 人工智能 自然语言处理
迈向多语言医疗大模型:大规模预训练语料、开源模型与全面基准测试
【10月更文挑战第23天】Oryx 是一种新型多模态架构,能够灵活处理各种分辨率的图像和视频数据,无需标准化。其核心创新包括任意分辨率编码和动态压缩器模块,适用于从微小图标到长时间视频的多种应用场景。Oryx 在长上下文检索和空间感知数据方面表现出色,并且已开源,为多模态研究提供了强大工具。然而,选择合适的分辨率和压缩率仍需谨慎,以平衡处理效率和识别精度。论文地址:https://www.nature.com/articles/s41467-024-52417-z
51 2
|
1月前
|
开发框架 安全 .NET
.NET使用Moq开源模拟库简化单元测试
.NET使用Moq开源模拟库简化单元测试~