JavaApp自动化测试系列[v1.0.0][Desired Capabilities代码实例]

   日期:2020-08-28     浏览:113    评论:0    
核心提示:原生APP、混合型APP和Web APP,三种APP在移动端上自动化测试时对于Desired Capabilities 的设置稍微有所不同

原生App和混合App的Desired Capabilities

package org.davieyang.testscripts;
import java.io.File;
import java.net.URL;
import java.net.MalformedURLException;
import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.android.AndroidElement;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.testng.annotations.BeforeMethod;

public class DesiredCapDemo {
    AndroidDriver<AndroidElement> driver;
    
    @BeforeMethod
    public void setUp() throws MalformedURLException{
        // 原生App和混合App的Desired Capabilities
        DesiredCapabilities cap = new DesiredCapabilities();
        // 待测手机操作系统(Android, IOS)
        cap.setCapability("platformName", "Android");
        // 手机操作系统版本
        cap.setCapability("platformVersion", "4.3");
        // 待使用的自动化测试引擎默认Appium或Selendroid
        cap.setCapability("automationName", "appium");
        // 使用的手机类型或模拟器类型,真机时输入手机型号即可
        cap.setCapability("deviceName", "Remi 3");
        // 链接的物理设备的唯一设备标识符
        cap.setCapability("udid", "00a10399");
        // 设置收到命令的超时时间,如果超时Appium会自动关闭Session,默认60秒
        cap.setCapability("newCommandTimeout", "300");
        // 支持中文输入,默认为False,会自动安装unicode输入法
        cap.setCapability("unicodeKeyboard", "True");
        // 执行Unicode相关测试后往往需要恢复keyboard到原始状态
        cap.setCapability("resetKeyboard", "True");
        // 未安装应用时候,需要设定App的路径,使用如下组合,如果已经安装了App则直接从手机启动
        File appDir = new File("F:\\");
        File app = new File(appDir, "selendroid-test-app-0.17.0.apk");
        cap.setCapability("app","app.getAbsolutePath()");
        // 待运行的安卓应用的包名
        cap.setCapability("appPackage", "io.selendroid.testapp");
        // 待启动Android应用对应的Activity名称,如MainActivity和.Settings
        cap.setCapability("appActivity", ".HomeScreenActivity");
        // 待启动的Android Activity名称,如SplashActivity
        cap.setCapability("appWaitActivity", ".HomeScreenActivity");
        // 初始化Android Driver
        driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), cap);

    }
}

Web App Capabilities配置

package org.davieyang.testscripts;
import java.io.File;
import java.net.MalformedURLException;
import java.net.URL;

import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.remote.AutomationName;
import io.appium.java_client.android.AndroidElement;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.testng.annotations.BeforeMethod;

public class DesiredCapDemo2 {
    AndroidDriver<AndroidElement> driver;

    @BeforeMethod
    public void setUp() throws MalformedURLException {
        // 原生App和混合App的Desired Capabilities
        DesiredCapabilities cap = new DesiredCapabilities();
        // 待测手机名为Redmi 3
        cap.setCapability("devicName", "Redmi 3");
        // 选择appium作为自动化测试引擎
        cap.setCapability("automationName", AutomationName.APPIUM);
        // 待测移动设备的操作系统
        cap.setCapability("platformName", "Android");
        // 待测移动设备Android版本
        cap.setCapability("platformVersion", "5.1.1");
        // 待测浏览器为Chrome浏览器
        cap.setCapability("browser", "Chrome");
        // 初始化Android Driver
        driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), cap);
    }
}

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服