使用TestNG时出错

时间:2016-06-26 07:05:52

标签: java eclipse testng selendroid testng-eclipse

使用testNG运行java selendroid代码时,收到错误消息,"发生了Java异常。"以下例外 -

a

下面是selendroid java代码 -

Exception in thread "main" java.lang.NoClassDefFoundError: org/testng/TestNGException
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2688)
at java.lang.Class.privateGetMethodRecursive(Class.java:3035)
at java.lang.Class.getMethod0(Class.java:3005)
at java.lang.Class.getMethod(Class.java:1771)
at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:544)
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:526)
Caused by: java.lang.ClassNotFoundException: org.testng.TestNGException
at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 7 more

不熟悉testng和selendroid,请详细说明解决方案。

4 个答案:

答案 0 :(得分:1)

您的类路径中似乎没有testng jar。只需添加它。

答案 1 :(得分:0)

我有同样的问题,我发现根本原因是在POM文件中,scoop是“编译”到TestNG的依赖关系。 我所要做的就是擦除TestNG依赖项的scoop设置。

导致Eclipse TestNG插件出现异常,因为插件运行时在类路径中没有TestNG jar(它在编译阶段后运行)

在:

<dependency>
  <groupId>org.testng</groupId>
  <artifactId>testng</artifactId>
  <version>6.11</version>
  <scope>compile</scope>
</dependency>

后:

<dependency>
  <groupId>org.testng</groupId>
  <artifactId>testng</artifactId>
  <version>6.11</version>
</dependency>

答案 2 :(得分:0)

我的testng jar在classpath上,并且还为eclipse安装了testng插件。在eclipse中将我的项目转换为Maven项目解决了这个问题。

答案 3 :(得分:0)

您还可以编写如下依赖项:-

<dependency>
    <groupId> org.testng </groupId>
    <artifactId> testng </artifactId>
    <version> 7.3.0 </version>
    <scope>test</scope>
</dependency>