appium学习(2)-简单示例
来源:互联网 发布:和网络有关的英文单词 编辑:程序博客网 时间:2024/05/17 06:22
这里主要是跟着http://www.cnblogs.com/puresoul/p/4696825.html这边博文的步骤做的。
期间遇到了一些问题,因此我自己做了一些改动。
使用到的apk请看我上一篇博文。详细的步骤可以结合上面贴出地址的博文。因为源博文使用的相关jar包版本很低,使用新版本的jar包和原作者的代码就会出现问题。以下我引用的是selenium-server-standalone-3.0.0.jar、java-client-3.3.0.jar。
亲测可以正常运行。
//有默认的执行顺序import java.io.File;import java.net.URL;import java.util.List;import org.junit.After;import org.junit.Before;import org.junit.Test;import org.openqa.selenium.WebElement;import org.openqa.selenium.remote.CapabilityType;import org.openqa.selenium.remote.DesiredCapabilities;import io.appium.java_client.android.AndroidDriver; public class ContactTest { private AndroidDriver<WebElement> driver; @Before public void setUp() throws Exception { //设置apk的路径 File classpathRoot = new File(System.getProperty("user.dir")); System.out.println(classpathRoot); File appDir = new File(classpathRoot, "apk"); File app = new File(appDir, "ContactManager.apk"); //设置自动化相关参数 DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability(CapabilityType.BROWSER_NAME, ""); capabilities.setCapability("platformName", "Android"); capabilities.setCapability("deviceName", "Android Emulator"); //设置安卓系统版本 capabilities.setCapability("platformVersion", "4.3.1"); //设置apk路径 capabilities.setCapability("app", app.getAbsolutePath()); //设置app的主包名和主类名 capabilities.setCapability("appPackage", "com.example.android.contactmanager"); capabilities.setCapability("appActivity", ".ContactManager"); //初始化 driver = new AndroidDriver<WebElement>(new URL("http://127.0.0.1:4723/wd/hub"), capabilities); } @Test public void addContact(){ // WebElement el = driver.findElementByAndroidUIAutomator("new UiSelector().text(\"+Add Contact+\")"); // WebElement el = driver.findElement(By.accessibilityid("Add Contact") ); WebElement el = driver.findElementByAccessibilityId("Add Contact"); el.click(); List<WebElement> textFieldsList = driver.findElementsByClassName("android.widget.EditText"); textFieldsList.get(0).sendKeys("Some Name"); textFieldsList.get(2).sendKeys("Some@example.com"); driver.swipe(100, 500, 100, 100, 2); driver.findElementByAccessibilityId("Save").click(); } @After public void tearDown() throws Exception { driver.quit(); } }
1 0
- appium学习(2)-简单示例
- Appium学习(2)
- 学习Lua(2) -- Lua 简单示例
- JAXP学习(2)简单示例
- Appium示例
- appium学习(1)-Mac上的简单实用(测试android apk)
- APPIUM学习2
- Appium学习(1)
- Appium学习(3)
- 学习Lua(2) -- Lua 简单示例 收藏
- 学习boost program_options(2--简单示例)
- Mule学习-简单示例
- Appium入门示例(Java)
- Appium入门示例(Java)
- Appium(学习)
- appium学习
- appium(二)简单的demo
- Appium(JAVA)Windows 7系统搭建及示例运行
- 笔试题
- Wordpress自带的Widgets及其类名
- POJ 2135 Farm Tour and HDU 1853 Cyclic Tour(费用流初运用)
- 安装ubuntu16.04+cuda8.0+caffe+python+matlab+opencv3.0
- java博客开篇
- appium学习(2)-简单示例
- 关于app的几个核心功能的设计想法
- 文件操作
- python中os.path模块下的函数总结
- lightOJ1028-Trailing Zeroes (I) -math
- <Android 进阶>FragmentStatePagerAdapter与FragmentPagerAdapter的区别
- sql的基本用法
- 二分图的最大匹配、完美匹配和匈牙利算法
- Git工作流程