一款接口自动化神器—开源接口测试平台Lim(Less is More)

简介: 一款接口自动化神器—开源接口测试平台Lim(Less is More)

前言

对于传统的实现接口自动化的方案往往是搭建自动化框架,通过excel编写用例来驱动执行,例如常见的万金油技术栈组合:excel(编写用例)、pytest(用例执行)、allure(测试报告)等。

很多公司往往是通过自动化框架而非测试平台来实现接口自动化,主要是自动化框架相对于测试平台的建设成本会低很多。 但对于自动化用例的维护、及编写用例的上手难度来讲同样会更难不少。可以看到,建设架构的成本和用例维护成本是一个成反比的关系。而且大多(中小型企业)公司也没有时间或愿意花较高的薪资聘请专门开发测试平台的人员。所以寻找开源的接口测试平台也成为了一个办法。测试平台有很多,但真正能让开展自动化变得高效的却很少。所以,我结合自己这数年间主导建设多个性能、功能、UI及接口测试平台的经验,以及跟行业大厂的交流学习开发了一款接口测试平台—Lim,妄图通过自己的理解来提供一种高效自动化的解决方案。


介绍

Lim是一款轻量级的接口测试平台

Lim是Less is More(少即是多)的缩写,如它的名字一样我们希望用户在开展接口测试时所需的操作更少,但建设效率更高、实现的功能更多。因此我们做了许多交互细节上的优化和创新以及一些大胆的设计,比如:取消了局部变量、前后置计划、抛弃“先接口后用例”的传统建设思想,甚至还取消了“登录”!

你是否会疑问:这群Diao毛去掉了这些还如何高效的开展接口测试?

那还在等什么?赶快进入Lim的世界,看看Lim是怎么通过另一种方式让接口测试变得简单且高效的吧!

在线体验:http://121.43.43.59/
项目地址:
  1. GIthub
  2. Gitee(国内镜像)

主功能介绍

项目主页

强大的接口编辑页

参数类型自动识别、自动管理接口入库,接口参数快速回填以及多种编辑模式让应对各类复杂参数游刃有余:

全局参数、执行管理

用例输出的变量统一管理,来源可追溯;用例执行状态可控制:

多环境管理

能够配置多套环境参数,让一套用例能够在多套服务环境下执行:


支持Python代码

用例变量生成、期望判断、执行条件设置等操作完全兼容python代码:

更灵活的循环控制

循环控制支持多层嵌套,循环次数支持变量以及支持代码形式break操作:

强大的步骤控制器

用例步骤支持延时等待、重试次数及执行条件设置。交换简单且更加灵活:

步骤编辑功能

步骤支持合并、复制、拖拽改变排序,批量禁用等功能。一页俱全:

“免登录”设计

安全的操作无需登录,让非用例建设人员查看数据报表、报告情况更加快捷方便,减少多余的账号管理和登录操作:

弹窗拖拽

所有弹窗皆可拖拽,展示内容更加自由可控:

三分钟快速上手教程:点我访问

答疑、定制化开发

<<点我访问

docker镜像

制作中…

开发环境搭建教程

前端环境
  1. 安装nodejs
  2. 安装yarn
  3. 进入项目中的lim-web目录执行:yarn&&yarn start

后端环境
  1. python3.9+;
  2. mysql5.7+;
  3. 执行项目中的init-db.sql初始化数据库:
  4. 进入LimApi目录执行依赖包安装命令:pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple;
  5. 修改LimApi/LimApi/settings.py文件的DATABASES数据库配置;
  6. 启动服务:python manage.py runserver 0.0.0.0:8001;
  7. (可选)如果不涉及文件上传的操作可不执行:新开cmd窗口进入FileData目录执行命令python3 -m http.server 8003;

注意:因为django默认启动为单线程模式,所以上述的部署方式无法进行并发操作(例:在用例执行的同时进行中断执行的操作)所以可以通过UWSGI来启动项目。对于Linux系统推荐gunicorn+gevent的方式部署,本项目中的requirements.txt已集成了这两个库,所以在linux服务器上将启动命令更换为:python3 -m gunicorn -w 5 -k gevent -t 120 -D LimApi.wsgi -b 0.0.0.0:8006 即可。


在未来的版本还会加入测试报告、Swagger导入、自定义函数以及执行实时监控等功能。还考虑接入目前大火的ChatGPT或一些其他智能的人工智能模型来做一些新奇的功能。

另外小伙伴们提出的问题和BUG也会尽量解决。让我们一起成长吧!

开源不易,全靠用爱发电,如果对你有帮助请给我们点个Star:

  1. GIthub
  2. Gitee(国内镜像)


👇🏻使用中遇到问题,需要答疑👇🏻

目录
相关文章
|
9天前
|
人工智能 自然语言处理 前端开发
CodeArena:在线 LLM 编程竞技场!用于测试不同开源 LLM 的编程能力,实时更新排行榜
CodeArena 是一个在线平台,用于测试和比较不同大型语言模型(LLM)的编程能力。通过实时显示多个 LLM 的代码生成过程和结果,帮助开发者选择适合的 LLM,并推动 LLM 技术的发展。
39 7
CodeArena:在线 LLM 编程竞技场!用于测试不同开源 LLM 的编程能力,实时更新排行榜
|
4天前
|
监控 JavaScript 测试技术
postman接口测试工具详解
Postman是一个功能强大且易于使用的API测试工具。通过详细的介绍和实际示例,本文展示了Postman在API测试中的各种应用。无论是简单的请求发送,还是复杂的自动化测试和持续集成,Postman都提供了丰富的功能来满足用户的需求。希望本文能帮助您更好地理解和使用Postman,提高API测试的效率和质量。
31 11
|
1月前
|
人工智能 供应链 安全
AI辅助安全测试案例某电商-供应链平台平台安全漏洞
【11月更文挑战第13天】该案例介绍了一家电商供应链平台如何利用AI技术进行全面的安全测试,包括网络、应用和数据安全层面,发现了多个潜在漏洞,并采取了有效的修复措施,提升了平台的整体安全性。
|
1月前
|
JSON Java 测试技术
SpringCloud2023实战之接口服务测试工具SpringBootTest
SpringBootTest同时集成了JUnit Jupiter、AssertJ、Hamcrest测试辅助库,使得更容易编写但愿测试代码。
60 3
|
1月前
|
监控 安全 测试技术
构建高效的精准测试平台:设计与实现指南
在软件开发过程中,精准测试是确保产品质量和性能的关键环节。一个精准的测试平台能够自动化测试流程,提高测试效率,缩短测试周期,并提供准确的测试结果。本文将分享如何设计和实现一个精准测试平台,从需求分析到技术选型,再到具体的实现步骤。
133 1
|
1月前
|
编解码 人工智能 自然语言处理
迈向多语言医疗大模型:大规模预训练语料、开源模型与全面基准测试
【10月更文挑战第23天】Oryx 是一种新型多模态架构,能够灵活处理各种分辨率的图像和视频数据,无需标准化。其核心创新包括任意分辨率编码和动态压缩器模块,适用于从微小图标到长时间视频的多种应用场景。Oryx 在长上下文检索和空间感知数据方面表现出色,并且已开源,为多模态研究提供了强大工具。然而,选择合适的分辨率和压缩率仍需谨慎,以平衡处理效率和识别精度。论文地址:https://www.nature.com/articles/s41467-024-52417-z
49 2
|
1月前
|
开发框架 安全 .NET
.NET使用Moq开源模拟库简化单元测试
.NET使用Moq开源模拟库简化单元测试~
|
2月前
|
人工智能 监控 测试技术
云应用开发平台测试
云应用开发平台测试
77 2
|
1月前
|
监控 安全 测试技术
构建高效精准测试平台:设计与实现全攻略
在软件开发过程中,精准测试是确保产品质量的关键环节。一个高效、精准的测试平台能够自动化测试流程,提高测试覆盖率,缩短测试周期。本文将分享如何设计和实现一个精准测试平台,从需求分析到技术选型,再到具体的实现步骤。
64 0
|
1月前
|
NoSQL 测试技术 Go
自动化测试在 Go 开源库中的应用与实践
本文介绍了 Go 语言的自动化测试及其在 `go mongox` 库中的实践。Go 语言通过 `testing` 库和 `go test` 命令提供了简洁高效的测试框架,支持单元测试、集成测试和基准测试。`go mongox` 库通过单元测试和集成测试确保与 MongoDB 交互的正确性和稳定性,使用 Docker Compose 快速搭建测试环境。文章还探讨了表驱动测试、覆盖率检查和 Mock 工具的使用,强调了自动化测试在开源库中的重要性。
下一篇
DataWorks