我正在尝试使用Maven和TestNG创建测试自动化框架。应用程序中的所有测试类都写在src/test/java
文件夹下,所有实用程序方法都写在src/main/java
下。我可以成功使用pom.xml
运行所有测试脚本。该框架还包含一个main方法,从中动态创建testng.xml
并运行测试类。在main方法中,我使用下面的代码加载测试类
File classDir = new File("C:/workspace/myproject/target/test-classes/packagename/testScripts/"); //This is the path of all the compiled test classes
URL[] classUrl = {classDir.toURI().toURL()};
URLClassLoader urlClassLoader = new URLClassLoader(classUrl);
Class<?> testClass=urlClassLoader.loadClass("packagename.testScripts.TestClassName");
但它会引发异常
java.lang.ClassNotFoundException: packagename.testScripts.TestClassName
如何解决此问题?
答案 0 :(得分:0)
根据您班级的packagename.testScripts.TestClassName
的FQN,您的classDir
未正确设置,应该是:
File classDir = new File("C:/workspace/myproject/target/test-classes/");