1

我正在尝试使用 JUnit 4.11 来设置执行顺序。

我已尝试在 Ecipse IDE 中运行此链接(更改参数化测试的名称)上的参数化测试示例,但我发现 Eclipse IDE 中显示的测试名称没有任何变化。我希望看到测试名称显示为 test[1: fib(1)=1] 和 test[4: fib(4)=3],但它们显示为 test[0] 和 test[1]

@FixMethodOrder(MethodSorters.NAME_ASCENDING)

在 Eclipse IDE 中运行的以下示例导致以下执行顺序 (b,a,d,c) 而不是预期的 (a,b,c,d)

package com.org;
import static org.junit.Assert.*;
import org.junit.Test;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;

@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class ExecutionOrderTestName {

    @Test
    public void bTest() {
        System.out.println("b");
    }

    @Test
    public void aTest() {
        System.out.println("a");
    }

    @Test
    public void dTest() {
        System.out.println("d");
    }

    @Test
    public void cTest() {
        System.out.println("c");
    }
}

测试的顺序没有发生,我做错了什么?

4

1 回答 1

5

这听起来像您在类路径上有另一个 JUnit。看看有没有,删掉。在 Eclipse 中,您可以查看 Project Properties-> Java Build Path,然后查看 Libraries 选项卡。

于 2013-01-02T09:40:43.140 回答