我是一个实习项目的实习生,这个项目有可能在一个拥有庞大代码基础的公司中引入大量bug。目前公司没有为他们的任何项目实施自动化测试,所以我想在我去的时候为代码开始编写测试,以便我可以告诉我什么时候打破某些东西,但是我很难直观地发现什么是值得的测试和如何测试。有些东西比其他东西更明显:测试字符串操作函数并不太难,但是为多线程定制内存管理器编写的内容更棘手。你如何决定在测试套件中测试什么?
如何你去设计现有代码库的测试,你测试什么?你如何找出代码所做的基本假设?
我是一个实习项目的实习生,这个项目有可能在一个拥有庞大代码基础的公司中引入大量bug。目前公司没有为他们的任何项目实施自动化测试,所以我想在我去的时候为代码开始编写测试,以便我可以告诉我什么时候打破某些东西,但是我很难直观地发现什么是值得的测试和如何测试。有些东西比其他东西更明显:测试字符串操作函数并不太难,但是为多线程定制内存管理器编写的内容更棘手。你如何决定在测试套件中测试什么?
如何你去设计现有代码库的测试,你测试什么?你如何找出代码所做的基本假设?
没有简单的答案对你我害怕。这仅仅是一个艰难的斑点是。
要应用的方法是
这个想法是缓慢的代码库孤岛将出现在安全网之上,直到你达到收益递减点。迈克尔羽毛的WELC书由上面的Pangea发布,如果您冒险进入这个领域,这是一本必读书。
类似的问题已经被问和回答here
从我的一些最新的想法:
这个问题真的很多,也许你应该尝试获得一个概述的培训。假设你在美国,你可以仔细看看here。这是他们的course content。
他们也有很长的list of useful resources。
刚刚收到来自亚马逊的书。这是一个很好的资源! – iand675 2011-04-08 20:42:52
很高兴我的建议很有用 – 2011-04-08 21:08:41