关于JUNIT的多线程测试问题
来源:互联网 发布:国家java等级考试 编辑:程序博客网 时间:2024/06/05 15:49
具体分析吧,如果这个private 方法有被其他public方法直接调用,而且逻辑清晰,则直接测试这个public方法。
如果这个private方法隐藏的很深,而且逻辑复杂,其他public方法离这个private的"距离"非常远。那就要考虑一下这个类的设计了,不容易测试的类,往往是功能过多,代码太大的类,建议拆分。
比如一个业务处理类,在复杂的业务逻辑处理过程中通过调用一个private方法做加密,而这个加密算法需要测试。类似这种情况,最好的办法就是将加密算法单独提取出一个类,功能非常单一的类,不要献小。然后对它进行junit测试,原来的类只要直接调用这个类就可以了。
这个也就是junit带来的一个推动力,为了达到测试友好,就必须保证代码清晰,相互耦合小。
- public class MyThreadTest {
- final static private long THREAD_MAX_RUNTIME = 1000;
- final static private long THREAD_WAITTIME = 200;
- private MyThread myThread1 = null;
- private MyThread myThread2 = null;
- @Before
- public void setUp() throws Exception {
- myThread1 = new MyThread();
- myThread2 = new MyThread();
- }
- @Test(timeout = THREAD_MAX_RUNTIME)
- public void testRun() throws Exception {
- Thread t1 = new Thread(myThread1);
- Thread t2 = new Thread(myThread2);
- t1.start();
- t2.start();
- Thread tc = Thread.currentThread();
- synchronized (tc) {
- while (t1.isAlive() || t2.isAlive()) {
- tc.wait(THREAD_WAITTIME);
- }
- tc.notify();
- }
- Assert.assertEquals(100, myThread1.getI());
- Assert.assertEquals(100, myThread2.getI());
- }
- }
- 关于JUNIT的多线程测试问题
- Junit测试多线程的问题
- Junit测试中多线程问题
- junit测试和main方法多线程中遇到的问题
- 有关Junit的多线程测试
- 有关Junit的多线程测试
- 有关Junit的多线程测试
- 有关Junit的多线程测试
- 有关Junit的多线程测试
- 有关Junit的多线程测试
- 关于junit测试用例数据不回滚的问题
- Junit单元测试多线程的问题
- 关于在eclipse中使用Spring+JUnit时,JUnit找不到测试类的问题
- Junit测试中多线程的坑
- Junit 多线程测试
- Junit测试多线程
- Junit 多线程测试
- Junit spring 多线程测试
- 整数划分算法原理与实现
- 自己动手编写Opera插件
- PHP小偷程序原理和实例
- 比较运算符的重载
- 常用操作
- 关于JUNIT的多线程测试问题
- 如何使Unix 下环境变量设置永远有效
- 获取各种尺寸
- 亮剑.NET. 图解C#开发实战 在线阅读
- cesfdsf
- BIOS中隐藏Telnet后门
- windows 2003 IIS 6 urlrewritenet
- 拷贝构造函数
- 联通宽视界应用案例