美文网首页
java+APPium自动化测试

java+APPium自动化测试

作者: 开心的小哈 | 来源:发表于2020-07-02 15:49 被阅读0次

配置eclipse中创建maven项目

2020-06-29.png

项目创建完成后进入pom.xml进行设置增加dependencies选项
1.配置appium
2.配置testng

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.test</groupId>
  <artifactId>Apptest</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <dependencies>
  <!-- https://mvnrepository.com/artifact/io.appium/java-client -->
<dependency>
    <groupId>io.appium</groupId>
    <artifactId>java-client</artifactId>
    <version>6.1.0</version>
</dependency>

   <!-- https://mvnrepository.com/artifact/org.testng/testng -->
<dependency>
    <groupId>org.testng</groupId>
    <artifactId>testng</artifactId>
    <version>7.1.0</version>
    <scope>test</scope>
</dependency>
  </dependencies>
</project>

配置完成后选择编写好的类:

创建类并执行
右键:
2020-07-02 (3).png
将class文件编译成testNG测试文件
有很多人配置完成后右键不会出现此选项,那就需要安装下TestNG的插件
插件的安装方式请访问:https://www.jianshu.com/p/b91c1bca0d44
开始编写代码
package com.test.firsAppium;

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

import org.aspectj.lang.annotation.Before;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.testng.Assert;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;

import io.appium.java_client.android.AndroidDriver;

public class AppiumTest {
    static AndroidDriver<WebElement> androidDriver;
    
    public static void main(String[] args) throws Exception {
        setUp();
        login();
        tearBown();
    }
    @BeforeTest
    public static void setUp() throws MalformedURLException {
        // 1.创建配置对象
        DesiredCapabilities desird = new DesiredCapabilities();
        // 2添加配置
        desird.setCapability("deviceName", "21623928");
        // 配置平台
        desird.setCapability("platformName", "Android");
        // 配置包名
        desird.setCapability("appPackage", "com.rongda.investmentmanager");
        // 配置页面
        desird.setCapability("appActivity", "com.rongda.investmentmanager.view.activitys.home.SplashActivity");
        //自动化引擎,uiautomator2支持输入框
        desird.setCapability("automationName","uiautomator2");
        //3创建驱动
        //参数一:APPium通讯地址
        //参数二:配置对象
        androidDriver = new AndroidDriver<WebElement>(new URL("Http://127.0.0.1:4723/wd/hub"),desird);
    }
    
    @Test
    public static void login() throws InterruptedException {
        //等待元素加载完毕
        Thread.sleep(2000);
        //1.找到城市定位
        androidDriver.findElementById("com.rongda.investmentmanager:id/et_name").sendKeys("yanchenglong");
        androidDriver.findElementById("com.rongda.investmentmanager:id/et_password").sendKeys("a123456");
        androidDriver.findElementById("com.rongda.investmentmanager:id/btn_login").click();
        Thread.sleep(2000);
        //com.rongda.investmentmanager,只会访问activitiy的位置currentActivity
        //用Assert.assertEquals(dun1, dun2);方法进行断言,判断是否成功进入主页面
        String dun1=".view.activitys.home.MainActivity";
        String dun2=androidDriver.currentActivity();
        System.out.println(dun1);
        System.out.println(dun2);
        Assert.assertEquals(dun1, dun2);
        
        }
    @AfterTest
    public static void tearBown() {
        //当测试用例运行完毕销毁驱动
        androidDriver.quit();
    }
    
}

相关文章

网友评论

      本文标题:java+APPium自动化测试

      本文链接:https://www.haomeiwen.com/subject/zilofktx.html