相关疑难解决方法(0)

JUnit混淆:使用'extends TestCase'还是'@Test'?

我发现JUnit的正确使用(或至少是文档)非常令人困惑.这个问题既可作为未来参考,也可作为真正的问题.

如果我理解正确,有两种主要的方法来创建和运行JUnit测试:

方法A(JUnit 3-style):创建一个扩展TestCase的类,并用该单词启动测试方法test.当作为JUnit Test(在Eclipse中)运行该类时,test将自动运行以该单词开头的所有方法.

import junit.framework.TestCase;

public class DummyTestA extends TestCase {

    public void testSum() {
        int a = 5;
        int b = 10;
        int result = a + b;
        assertEquals(15, result);
    }
}
Run Code Online (Sandbox Code Playgroud)

方法B(JUnit 4-style):创建一个"普通"类并@Test在方法前加一个注释.请注意,您不必使用单词启动方法test.

import org.junit.*;
import static org.junit.Assert.*;

public class DummyTestB {

    @Test
    public void Sum() {
        int a = 5;
        int b = 10;
        int result = a + b;
        assertEquals(15, result);
    }
}
Run Code Online (Sandbox Code Playgroud)

混合两者似乎不是一个好主意,请参阅例如 …

java junit automated-tests

149
推荐指数
4
解决办法
7万
查看次数

使用ivy的ant 1.9中的junit任务失败,出现junit.framework.AssertionFailedError:未找到测试

我有一个基于ant和ivy的项目,并且我还使用ivy来加载依赖项。由于某些原因,使用ant 1.9时,这些项目之一已开始报告一个奇怪的失败:

junit.framework.AssertionFailedError: No tests found in name.of.my.Clazz
Run Code Online (Sandbox Code Playgroud)

这很奇怪,因为我在类中使用JUnit4 @Test批注来批注测试方法,因此应该找到很多测试用例。

java ant junit ivy junit4

0
推荐指数
1
解决办法
363
查看次数

标签 统计

java ×2

junit ×2

ant ×1

automated-tests ×1

ivy ×1

junit4 ×1