Appium怎样驱动手机淘宝APP

import io.appium.java_client.AppiumDriver;
import io.appium.java_client.android.AndroidDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.testng.Assert;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;

import java.net.MalformedURLException;
import java.net.URL;

import static java.lang.Thread.sleep;

public class TaobaoAppTest {
    private AppiumDriver driver;

    @BeforeMethod
    public void beforeMethod()
            throws MalformedURLException, InterruptedException {
        DesiredCapabilities capabilities = new DesiredCapabilities();
        capabilities.setCapability("platformName","Android");
        //Mobile OS类型
        capabilities.setCapability("platformVersion","7.1.1");
        //Mobile OS版本
        capabilities.setCapability("deviceName","3216e430");
        //adb devices
        capabilities.setCapability("browserName","");
        //Web浏览器名称,如果对App测试,值为空
        capabilities.setCapability("appPackage","com.taobao.taobao");
        //手机淘宝包名
        capabilities.setCapability("appActivity","com.taobao.tao.welcome.Welcome");
        //手机淘宝的launcherActivity
        capabilities.setCapability("unicodeKeyboard",true);
        //支持中文输入,默认false
        capabilities.setCapability("resetKeyboard",true);
        //重置输入法为系统默认
        capabilities.setCapability("noSign",true);
        //不重新签名apk
        capabilities.setCapability("noReset", true);
        //不重新安装apk

        URL url = new URL("http://127.0.0.1:4723/wd/hub");
        driver = new AndroidDriver(url, capabilities);
        sleep(3000);
    }

    @Test
    public void taobaoApp() throws InterruptedException {
        driver.findElementById("com.taobao.taobao:id/home_searchedit")
                .click();
        //点击淘宝搜索框
        sleep(2000);
        driver.findElementById("com.taobao.taobao:id/searchEdit")
                .sendKeys("华硕官方旗舰店");
        driver.findElementById("com.taobao.taobao:id/searchbtn")
                .click();
        sleep(4000);

        Assert.assertTrue(driver.getPageSource().contains("asus华硕官方旗舰店"));
        //断言
    }

    @AfterMethod
    public void afterMethod(){
        driver.closeApp();
        driver.quit();
    }
}

猜你喜欢

转载自blog.csdn.net/yjlch1016/article/details/79145637