Pét*_*rök 16
奇怪的问题 - 单元测试应该是自动的,因此可重复且易于运行.对于许多人(包括我)来说,"手动单元测试"是一个矛盾的术语.
在无法进行自动化测试的情况下,手动测试可能很有用.这些通常不是单元测试级别,而是更高 - 例如集成,GUI,压力等测试.
通过单元测试,您可以一次测试一小段代码(通常是单个方法/类).测试本身是用代码编写的,因此它们(几乎总是)可以由单元测试框架自动运行.
更新:现在您为问题提供了更具体的背景,更容易给出具体答案:-)
我确信,在SW项目的整个生命周期中,自动化单元测试几乎总能为自己付出多少代价.设置它们比手动测试更昂贵,但运行它们的次数越多,节省的时间就越多 - 您可以通过新的更改获得有关代码被破坏的地方的早期反馈.
用单元测试覆盖遗留代码绝对不容易,但如果产品对贵公司有价值并且预计会持续多年,那么它仍然是值得的.尤其如此,因为在现实生活中,生产系统往往比其预期寿命更长.
一方面是,您"尝试检查我们编写的所有代码路径" - 使用自动单元测试结合代码覆盖工具,您可以自动查看 - 通常在您的IDE中,如果覆盖工具集成良好 - 什么最新的单元测试不包含代码路径.
我建议有效地使用遗留代码 - 它包含了大量有关如何为纠结的,写得不好的遗留代码编写单元测试的宝贵知识.
“手动单元测试”几乎是不可能的。单元测试被定义为隔离测试小的代码单元。您实际上无法手动完成此操作。
现在,如果您正在谈论集成测试,那就是另一回事了:
专业版手动集成测试:
Con手动集成测试:
总而言之,最好同时进行手动和自动集成测试。这些有时有时可以很好地互补,因为有些事情实际上可以更容易以自动化的方式进行测试,而另一些则根本无法实现自动化。