测试技术
测试是一个复杂的学科,测试是很重要的。
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.htmlhttps://doc.rust-lang.org/book/ch11-03-test-organization.html#test-organization