Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/360.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用IntelliJ运行JUnit测试_Java_Intellij Idea_Junit_Teavm - Fatal编程技术网

Java 使用IntelliJ运行JUnit测试

Java 使用IntelliJ运行JUnit测试,java,intellij-idea,junit,teavm,Java,Intellij Idea,Junit,Teavm,我正在使用IntelliJ 2018.1,我正在尝试运行JUnit测试,但从CTRL+SHIFT+F10运行测试时,会跳过测试: @RunWith(TeaVMTestRunner.class) @SkipJVM @FixMethodOrder(MethodSorters.NAME_ASCENDING) public class ShapeTest { static final Logger logger = Logger.getLogger(ShapeTest.class.getNam

我正在使用IntelliJ 2018.1,我正在尝试运行JUnit测试,但从CTRL+SHIFT+F10运行测试时,会跳过测试:

@RunWith(TeaVMTestRunner.class)
@SkipJVM
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class ShapeTest {

    static final Logger logger = Logger.getLogger(ShapeTest.class.getName());
    @Rule
    public final ExpectedException exception = ExpectedException.none();

    @Test
    public void testGet() {
        System.out.println("ShapeTest - testGet");
        String response = Shape.get("https://httpbin.org/get")
                .header("accept", "application/json")
                .header("Content-Type", "application/json")
                .asJson();

        JSONObject json = new JSONObject(response);
        String url = json.getString("url");
        JSONObject headers = json.getJSONObject("headers");
        assertNotNull(json);
        assertNotNull(url);
        assertNotNull(headers);

        System.out.println(json.toString());
    }

}
但当使用下面的命令从终端运行时,它可以工作:

mvn test -Dteavm.junit.target=target/js-tests -Dteavm.junit.js.runner=h
tmlunit -Dteavm.junit.js.threads=2

这里的任何IntelliJ/JUnit专家都可能知道为什么会发生这种情况

如果你像我一样是intellij的新手。我写了junits,只想运行它们。在eclipse中,您可以转到TestClass->右键单击->运行->作为junit。有点像这样。它在intellij中也类似。转到测试类右键单击并作为junits运行。 如果没有这样的选择,那么问题可能在于 文件->项目结构->模块->来源此处您的测试不能配置到repo的测试文件夹中。 因此,在项目结构->模块->源中单击模块中的测试,然后选择测试文件夹的路径。然后应用->确定。
现在,右键单击测试类将提供运行方式测试选项。

您可以在运行配置设置中指定相同的
-D
参数。按“运行”(Windows上按Alt+Shift+F10,Mac上按Ctrl+Alt+R),选择您的运行配置,向右箭头,编辑:

然后在VM选项下指定所有
-D
参数:


之后,选项将被传递给TeaVM Runner,就像它与
mvn test
命令一起工作一样。

当您选择类并从上下文菜单中选择“运行测试”时会发生什么?
test被忽略。
这是日志中显示的跳过jvm的内容?除此之外,我想这可能是intellij中不起作用的东西。我会转到他们的产品论坛,在那里提问。你经常会在几个小时内收到他们支持团队的回复。也许不是在星期天。。。