我有一个用户创建并上传jar
填充JUnit
测试的项目。我的项目在Spring
中运行,由于某种原因它无法运行。我可以硬编码一些JUnit
测试并且它们工作正常但是一旦我将确切的代码放在.jar文件中,文件就不会运行。这是关于Stack Overflow的第一个问题,我将不胜感激。
这是我的代码
simpletest.jar
import org.junit.Test;
public class simpletest {
@Test
public void sayHello() {
System.out.println("Simple test ran");
}}
runjar.java
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());
答案 0 :(得分:1)
当您加载URLClassLoader
时,您需要提供当前ClassLoader
以加载所需的JUnit库。
//Code to run junit test
URLClassLoader urlClassLoader = new URLClassLoader(classLoaderUrls, getClass().getClassLoader());