Eclipse 3.4.1에서 JUnit 테스트 케이스를 실행 중입니다. 이 테스트 케이스는 스레드를 시작하는 클래스를 생성하여 일부 작업을 수행합니다. 테스트 메소드가 끝나면 Eclipse가 강제로 스레드를 종료 한 것으로 보입니다.Eclipse에서 스레드가 포함 된 JUnit 테스트 케이스를 실행할 수 없습니다.
명령 줄에서 동일한 테스트를 실행하면 스레드가 제대로 실행됩니다.
어떻게 든 이클립스에서 이러한 문제가 발생했다는 것을 기억하지 못합니다. Eclipse에 항상 존재하거나 3.4.x에서 추가 했습니까? 이클립스에서이 테스트를 실행하면
, 내가 (1800까지) 탄소 나노 튜브의 몇 printts를 가져온 다음 테스트 케이스가 utomatically 종료 : 여기
은 예입니다. 그러나 JUnit의 TestRunner를 시작하는 main 메소드를 실행하면 스레드가 무기한으로 계산됩니다.import junit.framework.TestCase;
import junit.textui.TestRunner;
/**
* This class shows that Eclipses JUnit test case runner will forcibly
* terminate all running threads
*
* @author pshah
*
*/
public class ThreadTest extends TestCase {
static Runnable run = new Runnable() {
public void run() {
int cnt = 0;
while(true) System.out.println(cnt++);
}
};
public void testThread() {
Thread t = new Thread(run);
t.start();
}
public static void main(String args[]) {
TestRunner runner = new TestRunner();
runner.run(ThreadTest.class);
}
}
테스트 중에 스레드를 올바르게 조인합니까? – Kosi2801
Junit이 응용 프로그램 스레드에서 응답을받을 수 없기 때문에 thread.if에서 응답을 받고 있습니까? – Giridhar
몇 가지 예제 코드를 제공해 주시겠습니까? – guerda