关于Junit测试多线程问题的讨论

今天在用junit做调用其他项目组接口的登陆测试时,发现当在junit中启用多线程时,启动多线程很可能根本就不会运行。


 但是当加入断点时,会有个别线程运行,如图



 经过搜索资料,才知道原来junit会在运行完时将其管理的所有线程都释放掉。所以所有线程还没有跑就因为junit线程的释放而提前释放。当debug时,断点打在junit主线程上,延长了junit线程的存活时间,新new 的线程得以运行。所以要想在单元测试中使用多线程,应该在junit线程中增加Thread.sleep 操作。以保证其他线程有时间运行。



 

猜你喜欢

转载自being-away.iteye.com/blog/2236840