移动应用测试基于JAVA_Appium用于测试Android混合移动应用程序

我想在Android上运行的Cordova之上自动测试基本的混合移动应用程序构建 . 我使用了Apppium . 我跟着tutorial video开始了 . 我下载并将Selenum,selendroid和java客户端.jar文件添加到Application的构建路径中 .

以下是我的代码,

import java.net.MalformedURLException;

import java.net.URL;

import java.util.Iterator;

import java.util.Set;

import org.openqa.selenium.By;

import org.openqa.selenium.WebDriver;

import org.openqa.selenium.remote.DesiredCapabilities;

import io.appium.java_client.AppiumDriver;

import io.appium.java_client.MobileElement;

import io.appium.java_client.android.AndroidDriver;

import io.appium.java_client.remote.MobileCapabilityType;

public class AppiumTest {

public static void main(String[] args) throws MalformedURLException, InterruptedException {

URL serverAddress = new URL("http://0.0.0.0:4723/wd/hub");

WebDriver driver = new AndroidDriver(serverAddress, getDesiredCapabilities());

try{

Set contextNames = ((AppiumDriver) driver).getContextHandles();

for (final String contextName : contextNames) {

System.out.println(contextName);

if (contextName.contains("WEBVIEW_0")) {

Thread.sleep(3000);

driver.switchTo().window("WEBVIEW_0");

}

}

//Change color to Red

driver.findElement(By.cssSelector("p.recieved")).click();

Thread.sleep(2000);

//Change color to Red

driver.findElement(By.cssSelector("recieved")).click();

Thread.sleep(2000);

driver.get("http//appium.io/");

Thread.sleep(2000);

}

finally {

driver.quit();

}

System.out.println("Driver "+driver);

}

public static DesiredCapabilities getDesiredCapabilities() {

DesiredCapabilities capability = new DesiredCapabilities();

capability.setCapability(MobileCapabilityType.AUTOMATION_NAME, "selendroid");

capability.setCapability(MobileCapabilityType.PLATFORM_NAME, "Android");

capability.setCapability("platformVersion", "4.4.4");

capability.setCapability("deviceName", "Android-Dev");

capability.setCapability("app",

"C:/Joseph/Appium/HybridProject/AppiumTest/platforms/android/build/outputs/apk/android-debug.apk");

capability.setCapability("appPackage", "com.joseph.appiumtest");

capability.setCapability("appActivity", ".MainActivity");

return capability;

}

}

我能够得到 Capabilities 和 Contexts . 在切换窗口( driver.switchTo().window("WEBVIEW_0") )时,我收到的错误如 Exception in thread "main" org.openqa.selenium.WebDriverException: CATCH_ALL: java.lang.VerifyError: io/selendroid/server/model/SelendroidWebDriver

版本:

Android:4.4.4

Appium:1.6.3

Selenium:3.0.1

Selendroid:0.17.0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值