1 个不稳定版本
0.1.0 | 2019年5月26日 |
---|
#740 in 测试
25KB
516 行
Crucio
Crucio是一个测试框架,用于查看当其依赖项具有特定故障模式时,web服务如何表现。
安装
Rust nightly版是必需的(直到async/await稳定)。
cargo install crucio
用法
你需要有一个包含内容的文件,该文件用于健康的响应。
crucio
Crucio监听多个端口。每个端口将模拟一种故障模式。将你的应用程序设置为连接到一个端口,以检查它如何响应该种故障模式。
当 basePort
为 10000
(默认值)时,以下是端口及其故障模式。
10000 - Http Healthy
控制台。健康的响应,它无延迟地返回输入文件。
10001 - Http Slow
在返回文件之前等待9秒钟。
10002 - Http Slow Body
立即返回HTTP头部,然后在每个字节的主体之间等待1秒钟。
10003 - Http Random
正确的HTTP头部,但主体只是一个无限流随机字节。
10004 - Http Random Text
正确的HTTP头部,但主体只是一个无限流随机字母数字字符。
10005 - Http Never
将接受响应,但让它挂起,永远不返回任何内容。
10006 - Http Header but no body
接受响应并返回一个头部,但将挂起,永远不返回主体。
10007 - TCP Echo
TCP Echo服务器。将只返回它从客户端接收到的内容。
10008 - TCP Drop
TCP服务器在接受连接后立即关闭连接。
10009 - TCP Hanging socket
TCP服务器丢弃套接字,这意味着它永远不会关闭。实际上,这与10005相同。
10010 - TCP Never Accept
TCP服务器永远不会接受任何连接。
10011 - TCP Random TCP
TCP服务器将发送一些随机字节,然后关闭套接字。
10012 - Random Infinite TCP
TCP服务器将发送一个无限流随机字节。将永远不会关闭套接字。
10013 - Http Random Sleep
类似于 Http Slow
,但是会等待一个随机的时间。休眠的毫秒数是 LogNormal 分布,这意味着大多数请求会相对较快地返回,但有些会花费很长时间。
10014 - Http 随机休眠并伴随一些错误
类似于 Http 随机休眠,但 50% 的时间会失败,返回 500。
10015 - Http 始终错误
始终返回 500 - 内部服务器错误。
10016 - Http 慢错误
始终返回 500,但延迟 9 秒。
依赖项
~13MB
~218K SLoC