Selendroid server 2种启动方式
来源:互联网 发布:开淘宝网店怎么发货 编辑:程序博客网 时间:2024/06/04 19:48
1. 在执行test前, 通过命令启动。
java -jar E:\maven\SeleGrid2\selendroid-standalone-0.16.0-with-dependencies.jar -app "you uat path\SS_UAT.apk" -serverStartTimeout 100000 -serverStartRetries 3
打开http://localhost:4444/wd/hub/status
{"value":{"os":{"name":"Windows 7","arch":"amd64","version":"6.1"},"build":{"browserName":"selendroid","version":"0.16.0"},"supportedDevices":[{"emulator":true,"screenSize":"(800, 1280)","avdName":"11","platformVersion":"19","apiTargetType":"android"}],"supportedApps":[{"mainActivity":"com.singtel.mystorage.MainActivity","appId":"com.singtel.mystorage:2.0.22.697","basePackage":"com.singtel.mystorage"},{"mainActivity":"io.selendroid.androiddriver.WebViewActivity","appId":"io.selendroid.androiddriver:0.16.0","basePackage":"io.selendroid.androiddriver"}]},"status":0}
实现代码:
@Test
public void test03() throws Exception{
SelendroidCapabilities capa = new SelendroidCapabilities("com.singtel.mystorage:2.0.22.697");
//capa.setLaunchActivity("com.singtel.mystorage.MainActivity");
capa.setPlatformVersion(DeviceTargetPlatform.ANDROID19);
capa.setEmulator(true);
SelendroidDriver sd = new SelendroidDriver(capa);
System.out.println(sd.getContextHandles()); //用于返回被测app是NATIVE_APP还是WEBVIEW,如果两者都有就是混合型App
//查看元素,输入,登录等动作
sd.quit();
}
2. 通过代码
import junit.framework.Assert;
import io.selendroid.client.SelendroidDriver;
import io.selendroid.common.SelendroidCapabilities;
import io.selendroid.common.device.DeviceTargetPlatform;
import io.selendroid.standalone.SelendroidConfiguration;
import io.selendroid.standalone.SelendroidLauncher;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;
public class NativeApp2 {
private DesiredCapabilities seCap = null;
private SelendroidConfiguration config = null;
private SelendroidLauncher selendroidServer= null;
private WebDriver wd = null;
@BeforeTest
public void setup(){
if(selendroidServer != null){
selendroidServer.stopSelendroid();
}
config = new SelendroidConfiguration();
config.addSupportedApp("SS_UAT.apk"); //设置apk相对路径
selendroidServer = new SelendroidLauncher(config);
selendroidServer.launchSelendroid();
}
@Test
public void test03() throws Exception{
seCap = new SelendroidCapabilities("com.singtel.mystorage:2.0.22.697"); //设置appid值,需要和status的appid保持一致
wd = new SelendroidDriver(seCap);
WebElement inputField = wd.findElement(By.id("my_text_field"));
inputField.sendKeys("Selendroid");
Thread.sleep(3000);
Assert.assertEquals("Selendroid", inputField.getText());
}
@AfterTest
public void teardown(){
if(selendroidServer != null){
selendroidServer.stopSelendroid();
}
}
}
参考资料
https://github.com/selendroid/demoproject-selendroid/blob/master/src/main/java/io/selendroid/demo/SelendroidIntegrationTest.java#L45
- Selendroid server 2种启动方式
- selendroid
- Selendroid
- Selendroid inspector
- SQL Server常用的几种启动方式
- 用命令行方式启动Selenium Server
- 用命令行方式启动Selenium Server
- 启动sql server 混合验证方式
- Selendroid资料收集
- 安装appium-selendroid-driver
- Ubuntu Server下启动/停止/重启MySQL数据库的三种方式
- Ubuntu Server下启动/停止/重启MySQL数据库的三种方式
- Ubuntu Server下启动/停止/重启MySQL数据库的三种方式
- Activity的2种启动方式
- 几种启动方式
- Ms Sql Server 命令行方式的 启动,关闭
- WINDOWS登陆密码更改后,SQL SERVER不能启动解决方式
- debug方式深入理解netty源码-server端服务启动
- XDU-1111 Too Easy(矩阵快速幂)
- 《Java设计模式》之装饰模式
- RA layer request failed
- HDU 2176 取(m堆)石子游戏
- 流程图描述的WEP攻击
- Selendroid server 2种启动方式
- POJ 3159 Candies差分约束系统 spfa 附:各种最短路比较
- 十大技巧快速提升Android应用开发性能
- SDWebImage
- java中main方法的详解
- easyUI的右下角弹窗效果
- JS效率问题之 str+ ;array.join && arr[i]
- 在N个乱序数字中查找第k大的数字
- 用Arch Link(Mbed平台)制作的物联网展示