2017-05-10 1 views
2

実際のアンドロイドデバイスでAppiumテストを実行しようとしています。 Javaクラスは、Appiumインスペクタを使用して生成された:実際のAndroidデバイスでAppiumテストを実行できません。悪いパラメータ:BadParametersError:パラメータが正しくありません

Launching Appium with command: 
'/Applications/Appium.app/Contents/Resources/node/bin/node' appium/build/lib/main.js --address "127.0.0.1" --pre-launch --debug-log-spacing --automation-name "Appium" --platform-name "Android" --platform-version "6.0.1" --app "/Users/myuser/Documents/projects/testapplication/build/outputs/apk/myapp-debug.apk" --dont-stop-app-on-reset --device-name "e20123ee" 

[Appium] Welcome to Appium v1.5.3 

[Appium] Non-default server args: 

[Appium] address: '127.0.0.1' 

[Appium] launch: true 
[Appium] debugLogSpacing: true 
[Appium] platformName: 'Android' 
[Appium] platformVersion: '6.0.1' 
[Appium] automationName: 'Appium' 
[Appium] deviceName: 'd61462ac' 
[Appium] app: '/Users/myuser/Documents/projects/testapplication/build/outputs/apk/myapp-debug.apk' 
[Appium] dontStopAppOnReset: true 
[Appium] Deprecated server args: 
[Appium] --platform-name => --default-capabilities '{"platformName":"Android"}' 
[Appium] --platform-version => --default-capabilities '{"platformVersion":"6.0.1"}' 
[Appium] --automation-name => --default-capabilities '{"automationName":"Appium"}' 
[Appium] --device-name => --default-capabilities '{"deviceName":"d61462ac"}' 
[Appium] --app => --default-capabilities '{"app":"/Users/myuser/Documents/projects/testapplication/build/outputs/apk/myapp-debug.apk"}' 
[Appium] --dont-stop-app-on-reset => --default-capabilities '{"dontStopAppOnReset":true}' 
[Appium] Default capabilities, which will be added to each request unless overridden by desired capabilities: 
[Appium] platformName: 'Android' 
[Appium] platformVersion: '6.0.1' 
[Appium] automationName: 'Appium' 
[Appium] deviceName: 'd61462ac' 
[Appium] app: '/Users/myuser/Documents/projects/testapplication/build/outputs/apk/myapp-debug.apk' 
[Appium] dontStopAppOnReset: true 

[Appium] Appium REST http interface listener started on 127.0.0.1:4723 

[HTTP] --> GET /wd/hub/status {} 

[MJSONWP] Calling AppiumDriver.getStatus() with args: [] 

[MJSONWP] Responding to client with driver.getStatus() result: {"build":{"version":"1.5.3"... 

[HTTP] <-- GET /wd/hub/status 200 17 ms - 83 

[HTTP] --> POST /wd/hub/session {"desiredCapabilities":{"app":"/Users/myuser/Documents/projects/testapplication/build/outputs/apk/myapp-debug.apk","appPackage":"com.package","appActivity":"com.myapp.LaunchApp","appium-version":"v1.5.3","platformVersion":"6.0.1","platformName":"Android","deviceName":"d61462ac"},"requiredCapabilities":{},"capabilities":{"desiredCapabilities":{"app":"/Users/myuser/Documents/projects/testapplication/build/outputs/apk/myapp-debug.apk","appPackage":"com.package","appActivity":"com.myapp.LaunchApp","appium-version":"v1.5.3","platformVersion":"6.0.1","platformName":"Android","deviceName":"d61462ac"},"requiredCapabilities":{}},"alwaysMatch":{"app":"/Users/myuser/Documents/projects/testapplication/build/outputs/apk/myapp-debug.apk","appPackage":"com.package","appActivity":"com.myapp.LaunchApp","appium-version":"v1.5.3","platformVersion":"6.0.1","platformName":"Android","deviceName":"d61462ac"},"firs 

[debug] [MJSONWP] Bad parameters: BadParametersError: Parameters were incorrect. We wanted {"required":["desiredCapabilities"],"optional":["requiredCapabilities","sessionId","id"]} and you sent ["desiredCapabilities","requiredCapabilities","capabilities","alwaysMatch","firstMatch"] 

私はOSX 10.11上のEclipse 4.6.3を使用しています:

package some.package; 

import io.appium.java_client.android.AndroidDriver; 

import org.openqa.selenium.By; 
import org.openqa.selenium.WebDriver; 
import org.openqa.selenium.remote.DesiredCapabilities; 

import java.net.MalformedURLException; 
import java.net.URL; 
import java.util.concurrent.TimeUnit; 

public class somename{ 
    public static void main(String[] args) throws MalformedURLException { 
     DesiredCapabilities capabilities = new DesiredCapabilities(); 
     capabilities.setCapability("appium-version", "1.5.3"); 
     capabilities.setCapability("platformName", "Android"); 
     capabilities.setCapability("platformVersion", "6.0.1"); 
     capabilities.setCapability("deviceName", "d61462ac"); 
     capabilities.setCapability("app", "/Users/myuser/Documents/projects/testapplication/build/outputs/apk/myapp-debug.apk"); 
     capabilities.setCapability("appPackage", "com.package"); 
     capabilities.setCapability("appActivity", "com.myapp.LaunchApp"); 
     WebDriver wd = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities); 
     wd.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS); 

     wd.findElement(By.xpath("//android.widget.LinearLayout[1]")).click(); 
     wd.close(); 
    } 
} 

Appiumログが(Appium起動とテストスクリプトを起動する)この1です。 6、Appium 1.5.3、java-client-5.0.0-BETA5.jar、Selenium-server-standalone-3.3.1.jar

Appiumを使用してアプリケーションを起動できます。 Eclipseからはできません。

私が誤って設定したことを誰かに教えてもらえますか?

+0

すべてをサポートしています...あなたはそれが「Appium・バージョン」機能 –

+0

せずに実行確認することができます私のためによさそうだ、私はちょうどそれを試してみましたが、私は同じ結果を得ました。私は、コメント付きのsetCapabilityラインの組み合わせをたくさん試してみました。私は別の結果を得ることができませんでした。 –

答えて

0

すべてのライブラリがインストールされているかどうかを確認する必要があります。次の写真を見て、すべての図書館がある場合はお知らせください。この後はすべてがうまくいくはずです。

GSON-x.x.x.jar 
Java-client-x.x.x-javadoc.jar 
Java-client-x.x.x-sources.jar 
java-client-x.x.x.jar 
selenium-java-x.x.x.zip 
selenium-server-standalone-x.x.x.jar 
+1

これらのライブラリをすべて追加すると、問題が解決しました。レコードの場合、私は今使用しています: - gson-2.8.0.jar - java-client-5.0.0-BETA8-javadoc.jar - java-client-5.0.0-BETA8-sources.jar BETA5) - java-client-5.0.0-BETA8.jar - selenium-java-3.3.0.zip - selenium-server-standalone-3.4.0.jar(置き換え3.3.1) –

+0

ポストしていないことを申し訳ありません早く - これは実際に私の問題を修正しました。ありがとうございました。 –

0

は、変更された機能を以下の...

capabilities.setCapability("app", "myapp-debug.apk"); 

はAPKがあなたのAndroidデバイスにインストールされていることを、確認してくださいと試してみてください。

0

セレンスタンドアロンサーバー2.5を追加してください。あなたのプロジェクトでは3.3.1ではありません。

JavaクライアントのBETA4は、バージョン3.2より前のSeleniumでのみ動作します。

BETA5は3.2+

関連する問題