我正在尝试从命令提示符运行testng.xml。这是我正在运行的命令:
C:Userssathmakur>java -cp C:Userssathmakur.m2repositoryorgtestngtestng
6.3.1testng-6.3.1.jar org.testng.TestNG test.xml
我收到以下错误:
Exception in thread "main" java.lang.NoClassDefFoundError: com/beust/jcommander/ ParameterException
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Unknown Source)
at java.lang.Class.getMethod0(Unknown Source)
at java.lang.Class.getMethod(Unknown Source)
at sun.launcher.LauncherHelper.getMainMethod(Unknown Source)
at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source) Caused by: java.lang.ClassNotFoundException: com.beust.jcommander.ParameterExcep tion
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 6 more
我是使用TestNG和命令提示符的新手。如果有人能提供一些启示,那将是一个很大的帮助。
在命令提示符下运行 TestNG 类的步骤
- 打开日食
- 在指定的工作区中创建新项目
- 在同一工作区中创建一个名称为jar的文件夹,并粘贴硒jar,apachejar等
- 将 TestNG 库添加到项目
- 创建一个 TestNG 类并使用@Test注释编写一个方法
- 右键单击项目---->TestNG---->转换为TestNG---->您将获得一个测试.xml
-
打开命令提示符并键入以下命令
java -cp bin;jars/* org.testng.TestNG testng.xml
或
打开记事本并键入上述命令并另存为.bat文件,双击 BAT 文件。
Saritha,
更简单的方法是将测试.xml包含在您的pom.xml中。Maven Surefire插件可以配置为相同的。请参阅此链接 http://docs.codehaus.org/display/MAVENUSER/Maven2+And+TestNG.Example+pom.xml(观察 suitexmlfile 标签)。一旦你包括你的测试.xml。您所要做的就是从命令提示符调用"mvn test"。
从堆栈中可以清楚地看出,类路径中缺少名为 jcommander-x.xx.jar 的基本 jar 文件。将此 jar 文件添加到类路径,命令行执行应该可以正常工作。