zoukankan      html  css  js  c++  java
  • APP元素定位和元素操作

    1.APP 定位元素需要用到UIautomator

    打开:D:Andriod_SDK oolsuiautomatorviewer.bat

    打开模拟器-》驾考宝典.apk,一会进行元素定位

     脚本:

    package com.test.firstAppium;
    import java.net.MalformedURLException;
    import java.net.URL;
    import org.openqa.selenium.WebElement;
    import org.openqa.selenium.remote.DesiredCapabilities;
    import io.appium.java_client.android.AndroidDriver;
    public class AppiumTest001 {
     //声明全局变量
     public static AndroidDriver<WebElement> androidDriver;
     
     public static void main(String[] args) throws MalformedURLException, InterruptedException {
      //1.創建配置對象
      DesiredCapabilities desiredCapabilities=new DesiredCapabilities();
      //2.添加配置
      //deviceName:可以找到我们测试的设备
      desiredCapabilities.setCapability("deviceName", "127.0.0.1:62001");
      //platformName:测试平台android or IOS
      desiredCapabilities.setCapability("platformName", "Android");
      //appPackage:找到测试 APP:aapt dump badging.....
      desiredCapabilities.setCapability("appPackage", "com.handsgo.jiakao.android");
      //automationName:uiautomator2来解决输入框输入不了数据
      //自动化引擎
      //desiredCapabilities.setCapability("automationName", "uiautomator2");
      //appActivity:测试app入口
      desiredCapabilities.setCapability("appActivity","com.handsgo.jiakao.android.splash.Login");
      //创建驱动
      //传入2个参数,第一个参数:Appium通讯地址,第二个参数:配置对象
      androidDriver = new AndroidDriver<WebElement>
      (new URL("http://127.0.0.1:4723/wd/hub"), desiredCapabilities);
      testJiakao();
      
     }
     //自定义方法
     public static void testJiakao() throws InterruptedException {
      Thread.sleep(20000);
     //选择同意
      
     //1.找到定位城市文本,并且点击
      androidDriver.findElementById("com.handsgo.jiakao.android:id/cityTv").click();
     //2.输入城市:上海
     // androidDriver.findElementById("com.handsgo.jiakao.android:id/edt_search_q").sendKeys("上海");
     //3.输入框无法识别
      androidDriver.findElementByXPath("//android.widget.TextView[@text='北京']").click();
      //.findElementByXPath("//android.widget.TextView[@text='上海']").click();
      //4.选择性别
      androidDriver.findElementById("com.handsgo.jiakao.android:id/femaleTv").click();
     //5.选择驾校包名状态-未报名
      androidDriver.findElementById("com.handsgo.jiakao.android:id/unRegisterTv").click();
     //6.选择当前类型:小车
      androidDriver.findElementById("com.handsgo.jiakao.android:id/itemCar").click();
     //7.点击下一步
      androidDriver.findElementById("com.handsgo.jiakao.android:id/okBtn").click();
      
      
      
      
      
     }
    }
    运行脚本的时候,打开Appium和模拟器,uiautomator定位,但是这里脚本运行行没有识别搜索框,所以用XPath定位
     
  • 相关阅读:
    数据库的基本操作
    这是数据库的知识了
    这就全都是了解的东西啦
    互斥锁
    我只会用threading,我菜
    violet
    网络编程II
    网络编程
    这是网络编程的一小步,却是我的一大步
    莫比乌斯反演(一)从容斥到反演
  • 原文地址:https://www.cnblogs.com/JacquelineQA/p/12438785.html
Copyright © 2011-2022 走看看