大家点星⭐️支持下哦。
前端地址: https://github.com/asura-pro/indigo
后端地址: https://github.com/asura-pro/asura
Indigo
是一个测试接口的系统. 可以对 Http(s)
, Dubbo
, MySql
的请求响应进行断言. 一般用于企业内部接口的自动化测试, CI/CD Pipeline 节点, 线上巡检监控.
完整文档:https://docs.asura.pro
使用 Typescript, Angular, Ant Design 技术实现.
Indigo
的定位并非是一个框架而是一个开箱即用的测试系统, 对此设计了一套还算好用的 UI. 有 UI 的好处是, 相对与写脚本, 使用成本及其低, 且比使用脚本效率高 N 倍 (大部分情况下, 尤其是当用例的数量非常大时). 但和其他基于脚本的接口测试框架相比, 必然缺少了一定的灵活性. 事实上大部分接口测试场景都很简单, 就是响应进行断言并没有很复杂的逻辑 (那是业务系统的工作).Indigo
内置 Javascript 脚本引擎, 结合场景 其实灵活性也很高的.
Indigo
的后端 使用Akka框架作为底层基础实现.Akka
是JVM
上一个Actor 编程模型的实现, 很适合用来构建高并发, 分布式和弹性消息驱动的应用.Indigo
中使用了大量的Actor
来对场景和任务进行抽象, 保证大量场景和任务同时执行过程中的状态隔离.Indigo
中的数据, 包括基本的用例数据, 执行记录, 报告数据都存储在Elastic Search
中.
Indigo
中断言被抽象为一个 JSON 结构体 (JSON 格式的 DSL). 断言参考{ "$.entity.data" : { "$and" : [ { "$.code" : { "$eq" : "10000" } }, { "$.list" : { "$and" : [ { "$type" : "array" }, { "$size" : 10 } ] } } ] } }
场景
可以由一组顺序执行的不同类型的请求用例组成. 其中每一个步骤都可以导出变量供之后的请求使用. 可以把多个请求或场景组装成一个任务
.任务
可以通过接口, Cron 定时或其他自定义事件源触发, 一般用于巡检监控和持续集成.
使用场景
使用任务
任务统计数据, 趋势图
每次请求的详细数据
有 demo 试用地址吗
接上面,修改了下压缩比(git config --add core.compression -1),下载的时候只下一层(git clone --depth 1),然后又试了好几次,终于成功了。一共 13M,有俩 GIF 图片就占了 5M,不过这也只能怪网络不给力。
前端 https://github.com/asura-pro/indigo 很奇怪,这两天下载了 5 次都不成功。后端的一次就成功了。
demo 链接不上了
更新了
地址呢?同问
没开源地址啊