# Testing

Rust is a programming language that cares a lot about correctness and it
includes support for writing software tests within the language itself.

Testing comes in three styles:

* [Unit][unit] testing.
* [Doc][doc] testing.
* [Integration][integration] testing.

Also Rust has support for specifying additional dependencies for tests:

* [Dev-dependencies][dev-dependencies]

## See Also

* [The Book][doc-testing] chapter on testing
* [API Guidelines][doc-nursery] on doc-testing

[unit]: testing/unit_testing.md
[doc]: testing/doc_testing.md
[integration]: testing/integration_testing.md
[dev-dependencies]: testing/dev_dependencies.md
[doc-testing]: https://doc.rust-lang.org/book/ch11-00-testing.html
[doc-nursery]: https://rust-lang-nursery.github.io/api-guidelines/documentation.html
