簡體   English   中英

Spring 運行外部 JUnit Jar 導致 java.lang.Exception: No runnable methods

[英]Spring running external JUnit Jar causes java.lang.Exception: No runnable methods

我有一個項目,用戶在其中創建並上傳一個裝有JUnit測試的jar 我的項目在Spring運行,由於某種原因它不會運行。 我可以對一些JUnit測試進行硬編碼並且它們工作正常,但是一旦我將確切的代碼放入 .jar 文件中,該文件將無法運行。 這是我關於 Stack Overflow 的第一個問題,我將不勝感激。

這是我的代碼

簡單測試.jar

import org.junit.Test;
public class simpletest {
@Test
public void sayHello() {
    System.out.println("Simple test ran");
}}

運行jar文件

URL[] classLoaderUrls = new URL[]{new URL("file:///c:/Work/simpletest.jar")};
URLClassLoader urlClassLoader = new URLClassLoader(classLoaderUrls);
Class<?> appiumClass = null;
try {
    appiumClass = urlClassLoader.loadClass("simpletest.simpletest");
} catch (ClassNotFoundException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
// Run the class using JUnitCore
JUnitCore junit = new JUnitCore();
Result result = junit.run(appiumClass);
//Display if test was successful
System.out.println(result.wasSuccessful());

當您加載URLClassLoader您需要為其提供當前的ClassLoader以加載所需的 JUnit 庫。

        //Code to run junit test
        URLClassLoader urlClassLoader = new URLClassLoader(classLoaderUrls, getClass().getClassLoader());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM