
3 月 22 日,南京,聊聊生成式 AI 应用构建

还在苦等后端接口才能推进前端开发?
atest 开源工具全新升级,两大核心功能助你告别低效,轻松玩转开发测试!
亮点一:多数据库支持,数据查询从未如此简单
在接口开发、测试过程中,经常会和数据库打交道,甚至会同时用到不同类型的数据库,包括:SQL、noSQL 等等。下面给出在 atest 中如何使用数据库工具的介绍:
首先,添加数据库链接。经过测试,支持的数据库包括:MySQL、Postgres、TiDB、TDengine。另外,也支持对 Etcd、Redis 的查询。
然后,用户可以选择对应的数据库。UI 节目中默认以表格展示数据,这也是最常见的形式。
此外,也支持以 JSON 格式展示数据。这在某些情况下,可能是比较方便的。
作为开发者的你,如果这个功能对你有所帮助,或者你比较感兴趣的话,欢迎参与到相关领域的开源协作、贡献中来。不同类型的数据库的支持,是通过插件(extension)的方式来实现的,下面分别给出关系型数据库以及 Redis 缓冲插件的开源项目地址:
- https://github.com/LinuxSuRen/atest-ext-store-orm
- https://github.com/LinuxSuRen/atest-ext-store-redis
亮点二:Mock服务升级,前后端并行开发真香!
Mock系统通过模拟后端接口返回的数据,让前后端开发并行推进,提升开发效率。它为测试团队提供灵活的测试环境,可模拟各种正常和异常的接口响应情况,保障测试质量。Mock系统打破了前后端开发团队之间的壁垒,促进团队协作。同时,它具有灵活性,能快速适应需求变更,支持敏捷开发。以下是 atest 提供的 mock 服务的使用说明:
mock 服务是采用 YAML 格式来描述的,例如:
#!api-testing-mock # yaml-language-server: $schema=https://linuxsuren.github.io/api-testing/api-testing-mock-schema.json objects: - name: projects initCount: 3 sample: | { "name": "atest", "color": "{{ randEnum "blue" "read" "pink" }}" }
启动 mock 服务器的命令:atest mock --prefix / --port 9090 mock.yaml。用户可以设置服务端口,以及 API 的前缀。当 mock 服务启动后用户就可以通过代码或工具来调用这些 HTTP API 了。而为了满足各种接口的场景,下面分别介绍 atest 提供不同的 mock 特性:
模板函数:在 API 的路径、响应头(Header)、响应体(Response body)等重要部分都可以使用基于 Golang 的模板函数,尽可能地模拟期望的 API 状态。例如:随机枚举值、随机数字、随机字符串、时间日期、环境变量。更多模板函数请参考如下文档:
https://linuxsuren.github.io/api-testing/latest/tasks/template/
对象、自定义模式:在对象模式下,atest 自动提供符合 restFul 的基于简单对象的 CRUD(增删查改)API;在自定义模式下,atest 实现了完整的基于 HTTP 协议的接口,可以完成几乎任意接口的模拟,但用户也需要对协议本身比较熟悉。
代理机制:在真实的软件研发过程中,往往是在已有的系统(平台、产品)的基础之上进行开发,要新开发的 API 接口是其中的一部分,我们不可能(也没必要)把所有已存在的接口都模拟一遍。只要配置好 atest 提供的代理模式,前端研发不仅可以调用 mock 接口,而且还可以调用到已有的接口。
#!api-testing-mock # yaml-language-server: $schema=https://linuxsuren.github.io/api-testing/api-testing-mock-schema.json proxies: - path: /api/v1/{part} target: http://atest.localhost:8080
为什么选择 atest?
下面是 atest 截止到 v0.0.19 的部分数据:
- 开源社区活跃:25+贡献者,303 Stars,持续迭代中。
- 高效易用:8.5k+ 二进制下载量,6.8k+ 镜像使用,开发者口碑验证。
- 灵活扩展:插件化设计,满足企业级定制需求。
从数据库查询到智能Mock,atest 为开发者而生,让测试不再是瓶颈!
还没有评论,来说两句吧...