测试技术

测试是一个复杂的学科,测试是很重要的。

Edsger W. Dijkstra said that “Program testing can be a very effective way to show the presence of bugs, but it is hopelessly inadequate for showing their absence.” 程序测试是查找当前程序bug的有效手段,但是它完全不足以显示程序(所有)的bug。

虽然测试不足以显示程序所有的 bug,但是我们仍然应该尽力地去编写测试代码,以提高我们代码的正确性。

分类

Rust 社区将测试分为两类:

  • unit tests 单元测试
  • integration tests 集成测试

单元测试

单元测试小而集中,在一个时间点独立地测试一个模块,可以测试私有的接口。

集成测试

集成测试是在你的编写的库外部,像外部代码调用你的接口一样来进行测试,只能使用公共的接口。通常一个集成测试中使用多个模块。

参考链接

https://doc.rust-lang.org/book/ch11-00-testing.htmlopen in new windowhttps://doc.rust-lang.org/book/ch11-03-test-organization.html#test-organizationopen in new window