APP自動化測試腳本3

package com.lemon.day01;java

 

import java.net.MalformedURLException;android

import java.net.URL;shell

import java.util.List;數組

import org.openqa.selenium.By;app

import org.openqa.selenium.WebElement;ide

import org.openqa.selenium.remote.DesiredCapabilities;測試

import org.testng.Assert;ui

import org.testng.annotations.AfterClass;url

import org.testng.annotations.BeforeClass;spa

import org.testng.annotations.BeforeMethod;

import org.testng.annotations.DataProvider;

import org.testng.annotations.Test;

import io.appium.java_client.AppiumDriver;

import io.appium.java_client.android.AndroidDriver;

 

public class APPTest3 {

AppiumDriver<WebElement> driver;

@BeforeClass

public void beforeClass() throws MalformedURLException, InterruptedException{

//1;添加配置

   //手工:找到設備、APPAPP某個頁面

DesiredCapabilities desiredcapabilities = new DesiredCapabilities();

desiredcapabilities.setCapability("deviceName","127.0.0.1:52001");//設備名

desiredcapabilities.setCapability("appPackage","com.tencent.mm");//app包,區別咱們每臺設備的app

  //使用命令:adb shell dumpsys activity | find "mFocusedActivity"

desiredcapabilities.setCapability("appActivity","com.tencent.mm.ui.LauncherUI");//指定頁面

  //2;建立驅動

  //remoteAddress:遠程url地址

  //desiredCapablites :這個驅動指望獲得的能力

URL remoteAddress = new URL("http://127.0.0.1:4723/wd/hub");//固定不變的

driver = new AndroidDriver<WebElement>(remoteAddress,desiredcapabilities);

  //3;找到頁面元素

   //自動化:程序自動定位到頁面元素

 Thread.sleep(10000);

 WebElement registerBtn = driver.findElement(By.id("d36"));

 Thread.sleep(10000);  

 registerBtn.click();

 Thread.sleep(1000);

}

@AfterClass

public void fun(){

driver.quit();

}

@Test(dataProvider = "testDatas")

  //拿到數據提供者的數據,循環這個二維數組,提取元素(一維數組),會把一維數組中的每一個元素依次注入到形式參數裏

  //能夠把數據提供者的數據注入到測試方法的形式參數裏

   public void TestCase(String nickName,String mobilPhone,String pwd ) throws MalformedURLException, InterruptedException {

  //4;操做頁面元素來模擬用戶操做

  //測試用例,進入註冊頁面,如 暱稱、手機號、密碼都不輸入的狀況,而後點擊註冊

  List<WebElement> elements = driver.findElements(By.id("ht"));

//每次清空

  elements.get(0).clear();

  elements.get(1).clear();

  elements.get(2).clear();

 // WebElement nickNameInput = driver.findElement(By.id("ht"));

  //nickNameInput.sendKeys("");//輸入字符串

  elements.get(0).sendKeys(nickName);

 // WebElement mobilPhoneInput = driver.findElement(By.id("ht"));

 // mobilPhoneInput.sendKeys("");

  elements.get(1).sendKeys(mobilPhone);

 // WebElement pwdInput = driver.findElement(By.id("ht"));

  //pwdInput.sendKeys("");

  elements.get(2).sendKeys(pwd);

  WebElement registerBtnn = driver.findElement(By.id("cw1"));

  boolean isEnabled = registerBtnn.isEnabled();//是否被激活

  Assert.assertFalse(isEnabled);//斷言判斷是否能夠點擊

 

 

  }

  @DataProvider

   public Object[][] testDatas(){

  

   //int[] array1 = {1,2,3,4};//靜態數組

   Object[][] datas = {{"","",""},{"shashe","",""},{"shashe","15111917843",""}};

   return datas;

   }

}

相關文章
相關標籤/搜索