1. 我的程序多线程下正确性如何?性能如何?
2. 虽然java有垃圾收集机制,但是两个不同的java程序员实现相同功能的java程序可能使用的内存大不同。
这两点,很难通过JUnit来解决保证。p-unit很好的解决了这两个问题:
1. 同一个测试案例,可以单线程运行,也可以多线程运行。和JUnit不同,p-unit的思想是测试案例就是测试案例,不牵涉运行逻辑,所以同一个测试案例,可以被不同的运行器运行。p-unit测试案例无需实现任何接口,所以当然兼容JUnit Test案例,包括setUp/tearDown函数。
2. 每个测试函数,p-unit给出了运行时间和内存消耗情况,这使得跑单元测试的同时,也做了时间/内存的性能测试,而无需到出现性能瓶颈时使用昂贵的profiler工具来查找问题。
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/