actix-web/actix-test
dependabot[bot] bb8e621b27
build(deps): bump tokio from 1.44.1 to 1.44.2
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.44.1 to 1.44.2.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.44.1...tokio-1.44.2)

---
updated-dependencies:
- dependency-name: tokio
  dependency-version: 1.44.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-07 00:30:03 +00:00
..
src chore: move deny lints to manifests 2024-07-07 03:54:00 +01:00
CHANGES.md chore(actix-test): prepare release 0.1.5 2024-06-10 00:01:17 +01:00
Cargo.toml build(deps): bump tokio from 1.44.1 to 1.44.2 2025-04-07 00:30:03 +00:00
LICENSE-APACHE migrate integration testing to new crate (#2112) 2021-04-02 08:26:59 +01:00
LICENSE-MIT migrate integration testing to new crate (#2112) 2021-04-02 08:26:59 +01:00
README.md docs(test): intrgrate cargo-rdme 2024-06-10 23:23:38 +01:00

README.md

actix-test

crates.io Documentation Version MIT or Apache 2.0 licensed
dependency status Download Chat on Discord

Integration testing tools for Actix Web applications.

The main integration testing tool is [TestServer]. It spawns a real HTTP server on an unused port and provides methods that use a real HTTP client. Therefore, it is much closer to real-world cases than using init_service, which skips HTTP encoding and decoding.

Examples

use actix_web::{get, web, test, App, HttpResponse, Error, Responder};

#[get("/")]
async fn my_handler() -> Result<impl Responder, Error> {
    Ok(HttpResponse::Ok())
}

#[actix_rt::test]
async fn test_example() {
    let srv = actix_test::start(||
        App::new().service(my_handler)
    );

    let req = srv.get("/");
    let res = req.send().await.unwrap();

    assert!(res.status().is_success());
}