所以这是我的代码:
package tests;
import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
class StatementTester extends TestCase {
public StatementTester (String name) {
super(name);
}
protected void setUp() {
}
protected void tearDown() {
}
public void test1() {
System.out.println("testing");
assert(true);
}
public static Test suite() {
TestSuite suite= new TestSuite();
suite.addTest(new StatementTester("test1"));
return suite;
}
public static void main (String[] args) {
junit.textui.TestRunner.run (suite());
}
}
当我尝试运行时,我收到以下错误消息:
.E
Time: 0.001
There was 1 error:
1) test1(tests.StatementTester) at tests.StatementTester.main(StatementTester.java:30)
FAILURES!!!
Tests run: 1, Failures: 0, Errors: 1
我的代码基于Martin Fowler的第4章“重构:改进现有代码的设计”中给出的示例(尽管我简化了它,但基本结构是相同的)。另外,我运行eclipse 3.5.1并使用JUnit 3库(不知道它有多相关,但无论如何......)
你能否给我一些关于我做错的提示?
答案 0 :(得分:7)
首先,我想说eclipse中有一个功能,让您无需在测试类中声明main即可运行测试。
这是一个教程,将向您展示如何执行此操作(使用JUnit4): http://www.vogella.de/articles/JUnit/article.html
答案 1 :(得分:1)
当您的文件当前在编辑器中时, ALT - SHIFT - X , T 。或者右键单击 - >运行As-> JUnit测试。