免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
APPIUM操作android apk
安裝appium for window
安裝Node js
下載:java-client.jar
首先安裝appium 安裝完成后在環(huán)境變量path添加"C:\Program Files (x86)\Appium\node_modules\.bin;"
驗證安裝在命令行輸入:appium-doctor
如果出現(xiàn)下圖:表名配置成功
 
 

安裝Node js 安裝完畢再環(huán)境變量path 添加安裝路徑“;C:\Program Files\nodejs”
命令行輸入:node -v 如下圖
 
 配置目錄如下:把知乎客戶端命名為zhihu.apk
 
 
 
 
 
配置好appium環(huán)境之后,啟動appium 選擇項目的apk  ,可以看見apk的package和Activity 如下圖:
 
 怎么去識別APP的元素的,這里用到Android SDK tools 目錄下的工具uiautomatorviewer ,執(zhí)行uiautomatorviewer.bat就可
如下圖:比如登陸按鈕,看到resourceId,就是webdriver的find Element By.id
 
 
至于登陸用戶名和密碼,在Android中都是EditText控件,可以使用By.class
 
完成對象識別,最終代碼如下:
public class AppPPDemo {
 private AndroidDriver driver;
  @Test
  public void addContact() {
            App_login login = PageFactory.initElements(driver, App_login.class);
            //點擊登錄按鈕
            login.login(); //紅色標記部分 是我試驗?zāi)懿荒苡脀ebdriver的FindBy 和PageFactory,試驗成功可以使用 上面封裝的文件就是APP_login.java那個文件,下面會把代碼貼出來

            //等待
           driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
           //輸入用戶名和密碼
           List<WebElement> text_input = driver.findElementsByClassName("android.widget.EditText");
            text_input.get(0).sendKeys("546995529@qq.com");
           text_input.get(1).sendKeys("wf1989");
  
           WebElement button=driver.findElement(By.id("android:id/button1"));
           button.click();
            driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
          WebElement logout_button=driver.findElement(By.className("android.widget.ImageButton"));
          logout_button.click();
          WebElement logout = driver.findElement(By.id("android:id/title"));
         String title = logout.getText();
         System.out.println(title);
        logout.click();
  
  
  }
  @BeforeMethod
  public void beforeMethod() throws MalformedURLException {
         //設(shè)置appium,拿到path里面的appium路徑
         File classpathRoot = new File(System.getProperty("user.dir"));
        System.out.println("class是"+classpathRoot);
        //存放APP的目錄
        File appDir = new File(classpathRoot,"apps");
      System.out.println("appdIR是:"+appDir);
       File app = new File (appDir,"zhihu.apk");
       DesiredCapabilities zhihu=new DesiredCapabilities();
       zhihu.setCapability(CapabilityType.BROWSER_NAME,"");
       //deviceName
       zhihu.setCapability("deviceName","d6556835");
       //安卓機版本號
       //capabilities.setCapability(CapabilityType.VERSION, "4.4.2");
       //使用的平臺
       zhihu.setCapability(CapabilityType.PLATFORM, "WINDOWS");
        //獲取app的據(jù)對路徑 getAbsolutePath獲取絕對路徑
       // zhihu.setCapability("app",app.getAbsolutePath());
       zhihu.setCapability("app-package", "com.zhihu.android");
        zhihu.setCapability("app-activity", ".ui.activity.GuideActivity");
  
        driver=new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"),zhihu);
  
  }
  @AfterMethod
  public void afterMethod() {
       driver.quit();
  }
}
上面封裝的APP_login.java 腳本
public class App_login {
        WebDriver driver;
        @FindBy(how=How.ID,id="com.zhihu.android:id/login")
         WebElement loginbutton;
 public App_login(WebDriver driver){
           this.driver=driver;
 }
  @Test
  public void login() {
            loginbutton.click();
  }
}
 這個是真機運行腳本,如果想在android模擬器上運行直接用adb devices 命令查看deviceName 替換上面腳本高亮的部分,直接運行就行
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Appium之H5頁面元素定位(二)案例分析
從零開始學習Kivy:快速上手Kivy框架基礎(chǔ)!
Test Automation of Android App using Selenium WebDriver and Appium
使用 ABAP 控制 Android 原生應(yīng)用
Python + Appium 環(huán)境搭建
抖音抓取嘗試【已成功,滿滿都是坑】
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服