native app示例ContactsTest

native app示例ContactsTest,下面是例子中的源代码,说一下在学习这个例子中遇到的一个问题,调用textFieldsList.get(0).sendKeys("曹氏集团")和textFieldsList.get(2).sendKeys("Some@Name.com")输入的内容总是不正确,于是加上了这2句话

//设置键盘
 capabilities.setCapability("unicodeKeyboard", "True");
  capabilities.setCapability("resetKeyboard", "True");

问题就解决了,希望大家在学习过程中能少走弯路。


package com.glen.demo;
 
 import io.appium.java_client.AppiumDriver;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 import org.openqa.selenium.By;
 import org.openqa.selenium.WebElement;
 import org.openqa.selenium.remote.CapabilityType;
 import org.openqa.selenium.remote.DesiredCapabilities;
 
 import java.io.File;  
 import java.net.URL;  
 import java.util.List;
   
 public class ContactsTest {
     private AppiumDriver driver;
     @Before
     public void setUp() throws Exception {
         //设置apk的路径
         File classpathRoot = new File(System.getProperty("user.dir"));
         File appDir = new File(classpathRoot, "apps");
         File app = new File(appDir, "ContactManager.apk");
         
         //设置自动化相关参数
         DesiredCapabilities capabilities = new DesiredCapabilities();
         capabilities.setCapability(CapabilityType.BROWSER_NAME, "");
         capabilities.setCapability("platformName", "Android");
         capabilities.setCapability("deviceName", "ZTE U9180"); //Android Emulator
         
         //设置安卓系统版本
         capabilities.setCapability("platformVersion", "4.3");
         //设置apk路径
         capabilities.setCapability("app", app.getAbsolutePath()); 

       //设置键盘
         capabilities.setCapability("unicodeKeyboard", "True");
         capabilities.setCapability("resetKeyboard", "True");
         
         //设置app的主包名和主类名
         capabilities.setCapability("appPackage", "com.example.android.contactmanager");
         capabilities.setCapability("appActivity", ".ContactManager");
         
         //初始化
         driver = new AppiumDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);       
     }
 
     @Test
     public void addContact(){
         WebElement el = driver.findElement(By.id("com.example.android.contactmanager:id/addContactButton"));
         el.click();
         List<WebElement> textFieldsList = driver.findElementsByClassName("android.widget.EditText");
         textFieldsList.get(0).sendKeys("曹氏集团");
         textFieldsList.get(1).sendKeys("19874561221");
         textFieldsList.get(2).sendKeys("Some@Name.com");
         driver.swipe(100, 500, 100, 100, 2);
         driver.findElementByName("Save").click();
     }    
     
     @After
     public void tearDown() throws Exception {
         driver.quit();
     }
 }


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值