5个单元测试容易放的错误
2018-06-18 03:40:54来源:未知 阅读 ()
单元测试对于每个项目都是需要的,它不仅仅是帮助找出代码中缺陷,更重要是在你修改与增加新模块时能确保原来的模块没有被破坏。
下面是5个单元测试容易放的错误:
1. 与协作模块一起去测试算法。算法逻辑如果能从协作的代码中分离出来,应该是最简单的测试。否则,你得必须通过作业队列之前完成测试。作业队列中只有一部分复杂的逻辑。除非你正在测试是作业队列本身,并分别测试逻辑。无论代码和测试都需要变得容易编写与管理。
2. 太多Mocking. 我们知道通过我们会使用Mocking来隔离依赖,使得它们独立。换句话说,就是使你的代码模块化。当你Mock了整个世界,已没有什么迫使你分得开的部分。那你最终得到的代码是不能孤立地创造任何东西---全部纠结在一起了。
3. 没有使用asserts断言。有时我看到一些测试只是创建了对像,调用了方法。可能完成是一个验证创建或调用循环。但是,没有使用任何的asserts检查。检查代码是否是期待的行为。的确,代码可运行,如果有抛出异常,也没有任何东西可以验证。
4. 使用print打印语句。 我看到一些是从手工测试遗留下来的习惯。你看看它的价值再决定正确与否。但是,所有的检查应该使用断言进行。如果断言失败,你会看到它,因为测试失败。如果测试通过,没有什么应该被打印出来。有时候,开发测试时,它可以用print语句非常有用。但在这种情况下,添加一个标志,并关闭测试中打印,来检查这个标志。
5.检查log语句,不是结果。值得庆幸的这是不常见的,但我还是看到了,否则很能干的开发者做到这一点。无论结果是多么重要,没有打印在log中,可能在代码有错误,并且测试仍然通过。
最后3个错误容易避免,前2个需要花些时间,但代码最终漂亮的隔离开了。
希望对您软件开发有帮助。
您可能感兴趣的文章:
使用Moles框架实现HttpWebRequest与HttpWebResponse的单元测试
数据访问层的单元测试
软件项目避免开发儿童玩具
作者:Petter Liu
出处:http://www.cnblogs.com/wintersun/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
该文章也同时发布在我的独立博客中-Petter Liu Blog。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 捕获未经测试的返回值 2020-04-11
- 设计并测试Trapezium类 代码参考 2020-03-29
- 测试博客 2019-10-25
- 测试 2019-09-30
- c++性能测试工具:计算时间复杂度 2019-08-16
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash