2016-06-26 12 views
0

testNGでjava selendroidコードを実行しているときに、「Java例外が発生しました」というエラーメッセージが表示されます。以下の例外を除いて - 以下TestNGの使用時にエラーが発生する

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 

selendroid Javaコードされる -

package com.selendroid.demo; 

import org.openqa.selenium.WebDriver; 

import io.selendroid.SelendroidDriver; 
import io.selendroid.common.SelendroidCapabilities; 
import io.selendroid.common.device.DeviceTargetPlatform; 
import io.selendroid.standalone.SelendroidConfiguration; 
import io.selendroid.standalone.SelendroidLauncher; 

public class Sele { 

    private WebDriver driver; 

    public void setUp() throws Exception { 

     System.out.println("------------------------Started"); 

     SelendroidConfiguration config = new SelendroidConfiguration(); 

     // Add the selendroid-test-app to the standalone server 
     config.addSupportedApp("Demo.apk"); 

     // start the standalone server 
     SelendroidLauncher selendroidServer = new SelendroidLauncher(config); 
     selendroidServer.launchSelendroid(); 

     // Create the selendroid capabilities 
     SelendroidCapabilities capa = new SelendroidCapabilities(
       "io.selendroid.androiddriver:0.16.0"); 

     capa.setAut("com.example.demo:1.0"); 
     capa.setPlatformVersion(DeviceTargetPlatform.ANDROID15); 
     // capa.setEmulator(false); 
     // capa.setCapability(SelendroidCapabilities.EMULATOR, true); 
     // capa.setSerial("emulator-5554"); 
     SelendroidDriver driver = new SelendroidDriver(capa); 

     capa.wait(100); 
     driver = new SelendroidDriver(capa); 



    } 

    } 

ないTestNGのとselendroidに精通しているので詳細な溶液を得てください。

答えて

1

クラスパスにtestng jarがないようです。ただそれを追加してください。

0

私は同じ問題を抱えていましたが、根本的な原因はPOMファイルで、ScoopがTestNGのDependencyに "コンパイル"されていることでした。 私がしなければならなかったのは、TestNG依存のた​​めのスクープ設定を消去することでした。

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

(それがコンパイル・フェーズの後に実行している)が実行されている時にプラグインがクラスパスにTestNGの瓶を持っていないので、それは、EclipseのTestNGプラグインから例外に原因である

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

マイTestNGのジャーは、クラスパス上にあったとTestNGプラグインは、日食のために設置しました。私のプロジェクトをEclipseでMavenプロジェクトに変換すると、問題が解決しました。

関連する問題