一款接口自动化神器—开源接口测试平台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(国内镜像)


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

目录
相关文章
|
23天前
|
运维 Ubuntu 测试技术
自动化运维的利剑:Ansible在配置管理中的应用软件测试的艺术:探索性测试的深度与广度
【8月更文挑战第27天】 在数字化浪潮中,高效的运维工作是支撑企业IT系统稳定运行的关键。Ansible,作为一款简易而强大的自动化运维工具,正逐渐成为IT专业人士的新宠。本文将通过浅显易懂的语言和生动的案例,带你了解Ansible的核心概念、安装步骤、基础命令以及它在配置管理中的实际应用。我们的目标是让初学者能够轻松上手Ansible,同时为有经验的运维工程师提供一些实用的技巧和思路。
|
7天前
|
JSON 移动开发 监控
快速上手|HTTP 接口功能自动化测试
HTTP接口功能测试对于确保Web应用和H5应用的数据正确性至关重要。这类测试主要针对后台HTTP接口,通过构造不同参数输入值并获取JSON格式的输出结果来进行验证。HTTP协议基于TCP连接,包括请求与响应模式。请求由请求行、消息报头和请求正文组成,响应则包含状态行、消息报头及响应正文。常用的请求方法有GET、POST等,而响应状态码如2xx代表成功。测试过程使用Python语言和pycurl模块调用接口,并通过断言机制比对实际与预期结果,确保功能正确性。
30 3
快速上手|HTTP 接口功能自动化测试
|
9天前
|
安全 JavaScript 前端开发
自动化测试的魔法:如何用Python编写你的第一个测试脚本
【8月更文挑战第41天】在软件的世界里,质量是王道。而自动化测试,就像是维护这个王国的骑士,确保我们的软件产品坚不可摧。本文将引导你进入自动化测试的奇妙世界,教你如何使用Python这把强大的魔法杖,编写出能够守护你代码安全的第一道防护咒语。让我们一起开启这场魔法之旅吧!
|
16天前
|
IDE 测试技术 持续交付
Python自动化测试与单元测试框架:提升代码质量与效率
【9月更文挑战第3天】随着软件行业的迅速发展,代码质量和开发效率变得至关重要。本文探讨了Python在自动化及单元测试中的应用,介绍了Selenium、Appium、pytest等自动化测试框架,以及Python标准库中的unittest单元测试框架。通过详细阐述各框架的特点与使用方法,本文旨在帮助开发者掌握编写高效测试用例的技巧,提升代码质量与开发效率。同时,文章还提出了制定测试计划、持续集成与测试等实践建议,助力项目成功。
42 5
|
15天前
|
数据采集 测试技术 API
在BrowserStack上进行自动化爬虫测试的终极指南
随着互联网的发展,数据价值日益凸显,爬虫技术成为提取网页信息的关键工具。然而,不同环境下的测试与运行挑战重重,特别是在多浏览器、多平台上保证爬虫的稳定性和兼容性尤为困难。BrowserStack作为领先的跨浏览器测试平台,提供了强大的工具和服务。本文将详细介绍如何在BrowserStack上进行自动化爬虫测试,并结合代理IP技术提升爬虫的隐蔽性和成功率。通过具体步骤和案例分析,展示如何利用Selenium、自定义用户代理和Cookie设置来应对反爬虫机制。本指南旨在为开发者提供实用模板,帮助其在多变的测试环境中构建高效的爬虫系统。
|
17天前
|
安全 Linux 测试技术
Kali Linux预装的自动化渗透测试工具
Kali Linux预装的自动化渗透测试工具
26 2
|
19天前
|
敏捷开发 jenkins 测试技术
自动化测试之美:打造高效软件测试流程
【8月更文挑战第31天】在软件开发的海洋中,自动化测试犹如一艘航船,引导着项目向着质量的灯塔航行。本文将揭开自动化测试的神秘面纱,从基础理论到实践操作,一步步构建起你的测试框架。你将学会如何编写实用的测试脚本,并将其融入日常开发,最终让测试成为敏捷开发不可或缺的力量。让我们启航,探索自动化测试的世界,确保代码之船稳健前行。
|
19天前
|
Web App开发 测试技术 API
自动化测试之美:使用Selenium和Python进行Web应用测试
【8月更文挑战第31天】在软件开发的快节奏世界中,自动化测试如同一束明灯,照亮了质量保证之路。本文将引导你通过Selenium和Python的强大组合,探索如何构建高效的Web应用测试框架。我们不仅会讨论理论,还会深入代码,从一个简单的示例开始,逐步扩展至更复杂的场景。无论你是初学者还是有经验的开发者,这篇文章都将为你提供宝贵的见解和实用的技巧。让我们一同揭开自动化测试的神秘面纱,体验它的魅力所在。
|
22天前
|
敏捷开发 测试技术 数据安全/隐私保护
自动化测试的高效之路:如何利用Python和Selenium提升测试效率
【8月更文挑战第28天】本文旨在探讨通过Python语言结合Selenium框架来提高软件测试的效率。文章不仅介绍了自动化测试的基本概念,还提供了具体的代码示例,帮助读者理解如何实现自动化测试脚本,并指出了在实施过程中可能遇到的问题及其解决方案。通过本文,读者将学会如何有效地使用Python和Selenium工具,以减少重复性工作,提升测试流程的效率与准确性。
|
1天前
|
存储 监控 安全
在自动化测试环境中,如何确保测试数据的安全性和隐私性
在自动化测试环境中,如何确保测试数据的安全性和隐私性