java appium api
2016-12-30 11:56
260 查看
Appium中部分api的使用方法,有需要的朋友可以参考下。
使用的语言是java,appium的版本是1.3.4,java-client的版本是java-client-2.1.0,建议多参考java-client-2.1.0-javadoc。
1.使用AndroidDriver,其已经继承了AppiumDriver
2.截屏并保存至本地
3.push文件、pull文件
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
使用的语言是java,appium的版本是1.3.4,java-client的版本是java-client-2.1.0,建议多参考java-client-2.1.0-javadoc。
1.使用AndroidDriver,其已经继承了AppiumDriver
private AndroidDriver driver; @Before public void setUp() throws Exception { DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability("deviceName", "Android Emulator"); capabilities.setCapability("platformVersion", "4.4"); capabilities.setCapability("platformName", "Android"); capabilities.setCapability("appPackage", "com.android.settings"); capabilities.setCapability("appActivity", ".Settings"); driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities); } @After public void tearDown() throws Exception { driver.quit(); }
2.截屏并保存至本地
//截屏并保存至本地 File screen = driver.getScreenshotAs(OutputType.FILE); File screenFile = new File("d:\\screen.png"); try { FileUtils.copyFile(screen, screenFile); //commons-io-2.0.1.jar中的api } catch (IOException e) { e.printStackTrace(); }
3.push文件、pull文件
File file = new File("d:\\test.txt"); //test.txt内容为"test" String content = null; try { content = FileUtils.readFileToString(file); } catch (IOException e) { e.printStackTrace(); } byte[] data = Base64.encodeBase64(content.getBytes()); driver.pushFile("sdcard/test.txt", data); byte[] resultDate = driver.pullFile("sdcard/test.txt"); System.out.println(new String(Base64.decodeBase64(resultDate))); //打印结果为"test"
4.
//获取当前界面的activity,可用于断言是否跳转到预期的activity driver.currentActivity();
5.
//打开通知栏界面 driver.openNotifications();
6.
//获取网络状态 int status = driver.getNetworkConnection().value; System.out.println(status); //设置网络状态 driver.setNetworkConnection(new NetworkConnectionSetting(status)); //或者 driver.setNetworkConnection(new NetworkConnectionSetting(false, true, false));
7.
//启动其他应用,跨APP driver.startActivity("com.android.camera", ".CameraLauncher");
8.
//自动滑动列表 driver.scrollTo("text"); //或者 driver.scrollToExact("text");
9.
//安装APP driver.installApp(appPath); //判断应用是否已安装 driver.isAppInstalled("package name");
10.
//拖动相机图标至日历图标位置 new TouchAction(driver).longPress(driver.findElementByName("相机")) .moveTo(driver.findElementByName("日历")).release().perform();
11.
//锁屏 driver.lockScreen(2); //判断是否锁屏 driver.isLocked();
12.
//发送按键事件 driver.sendKeyEvent(AndroidKeyCode.HOME);
13.
<span style="color:#ff0000;"> </span> //通过uiautomator定位clickable属性为true的元素并点击 driver.findElementByAndroidUIAutomator("new UiSelector().clickable(true)").click(); //相同属性的元素使用List存放 List<WebElement> elements = driver.findElementsByClassName("class name"); elements.get(0).click(); //点击List中的第一个元素 //tap,点击元素位置 driver.tap(1, driver.findElementByName("日期和时间"), 0);
相关文章推荐
- appium之java API(2) -TouchAction
- appium-java-api
- Appium之java API
- Appium Java API
- appium()-java-client-api
- [Android测试] Appium的Java-client库api
- appium之java API(2)
- Appium Java API
- 转载:java api-appium
- appium-java api
- Appium之java API(01)-AppiumDriver
- Appium之java API
- Appium之java API
- Appium的java_client库api
- 使用JavaExcel API 往excel中插入图片
- JSR 268 (Java Smart Card I/O API) 呈交 JCP
- Java I/O API之性能分析 (下)
- JavaExcelApi指南(续)
- 《Java 手机/PDA 程序设计入门》读书笔记4--LCDAUI高级API之TextBox
- Java关于xml的API