2016-08-30 1 views
0

私はいくつかの既存のAppiumベースのAndroidアプリケーションの自動化を検討していますが、コード内から直接adbへのシェル呼び出しがあります。私はAppiumと同等の措置を講じる良い方法を見つけることができなかったので、作者がこれをしたと思う。ここでのadbコマンドです:Appiumを使用するために特定のadbシェルコマンドを削除する

adb shell am start -d https://<various_url_details_here> 

自動化は、それがトリガーの効果を持つ実行するユーザは、ブラウザやアプリなど様々なオプション、をタップすることができるようにダイアログ "で開きます]。シェルコマンドを直接実行せずにこの特定のコマンドをAppiumで実行する方法はありますか?そのような方法が存在するなら、それは良い考えですか? AndroidDriver.get()機能使用

答えて

0

private WebDriver driver; 

@Before 
public void setUp() throws Exception { 
    DesiredCapabilities capabilities = new DesiredCapabilities(); 
    capabilities.setCapability(..., ...); 
    //--------------------------------------------------------------// 
    driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities); 
} 

@Test 
public void testcase_001() throws Exception{ 
    driver.get("https://<various_url_details_here>"); // Here is what you want 
    WebDriverWait wait = new WebDriverWait(driver, 30); 
    wait.until(ExpectedConditions.presenceOfElementLocated(By.id(..."))); 
    Thread.sleep(5000); 
} 

@After 
public void tearDown() throws Exception { 
    driver.quit(); 
} 
+0

ありがとうございました!私はそれがとても簡単であるとは思っていませんでした。ソリューションの簡潔さを考えると、私はなぜこのような方法でadbを使用するのかわかりません。おそらく、私が知らない何かが追加されているかもしれません。 –

関連する問題