6 个版本 (3 个破坏性更新)
0.4.0 | 2024 年 7 月 28 日 |
---|---|
0.3.0 | 2023 年 6 月 3 日 |
0.2.0 | 2022 年 12 月 19 日 |
0.1.2 | 2022 年 12 月 19 日 |
0.1.0 | 2022 年 4 月 28 日 |
#93 在 测试 中
每月下载量 23,195
在 6 个 crate 中使用
13KB
195 行
axum-test-helper
axum-test-helper
暴露了 axum
原始的 TestClient,它是 axum
crate 的私有成员
有关此 crate 的更多信息,请参阅 crate 文档。
高级功能
- 提供易于使用的接口
- 为每个调用启动不同端口的服务器
- 处理 JSON、文本和文件响应/请求
使用示例
将此 crate 添加为 dev-dependency
[dev-dependencies]
axum-test-helper = "0.*" # alternatively specify the version as "0.3.0"
在自己的 Router 上使用 TestClient
use axum::Router;
use axum::http::StatusCode;
use axum_test_helper::TestClient;
// you can replace this Router with your own app
let app = Router::new().route("/", get(|| async {}));
// initiate the TestClient with the previous declared Router
let client = TestClient::new(app);
let res = client.get("/").send().await;
assert_eq!(res.status(), StatusCode::OK);
您可以在 示例目录 中找到类似示例。
有关更多示例,请参阅 crate 文档。
禁用跟踪
默认情况下,axum-test-helper 打印跟踪信息,例如 Listening on 127.0.0.1:36457
。您可以使用以下命令禁用跟踪:axum-test-helper = { version = "0.*", default-features = false, features = ["withouttrace"] }
。
贡献
在提交拉取请求或从主仓库拉取后,请确保所有测试通过
# Run axum-test-helper tests
cargo test
# Test the hello-world example project
(cd examples/hello-world && cargo test)
许可证
本项目采用 MIT 许可证。
依赖项
~8–23MB
~313K SLoC