目录结构:
java代码:
private AppiumDriver appiumDriver;
private Dimension dimension;
//获取当前屏幕大小
private int windowX;
private int windowY;
@BeforeClass
public void setup() throws MalformedURLException {
DesiredCapabilities desiredCapabilities = new DesiredCapabilities();
desiredCapabilities.setCapability(CapabilityType.BROWSER_NAME,"");
desiredCapabilities.setCapability("deviceName",PropertiesUtil.getValue("deviceName","./src/main/resources/android.properties"));
desiredCapabilities.setCapability("automationName",PropertiesUtil.getValue("automationName","./src/main/resources/appium.properties"));
desiredCapabilities.setCapability("platformName",PropertiesUtil.getValue("platformName","./src/main/resources/appium.properties"));
desiredCapabilities.setCapability("platformVersion",PropertiesUtil.getValue("platformVersion","./src/main/resources/appium.properties"));
//h5
//desiredCapabilities.setCapability("browserName", "chrome");
//设置包名和Activity名
desiredCapabilities.setCapability("appPackage", JianKangOuHai.appPackage);
desiredCapabilities.setCapability("appActivity",JianKangOuHai.appActivity);
//A new session could not be created的解决方法
desiredCapabilities.setCapability("appWaitActivity",JianKangOuHai.appActivity);
//每次启动时覆盖session,否则第二次后运行会报错不能新建session
desiredCapabilities.setCapability("sessionOverride", Boolean.parseBoolean(PropertiesUtil.getValue("sessionOverride","./src/main/resources/appium.properties")));
//appium虚拟机默认地址
appiumDriver = new AndroidDriver(new URL(PropertiesUtil.getValue("URL","./src/main/resources/appium.properties")),desiredCapabilities);
//设置超时时间,默认9500ms
appiumDriver.manage().timeouts().implicitlyWait(9500, TimeUnit.SECONDS);
dimension = appiumDriver.manage().window().getSize();
}
@AfterClass
public void tearDown() throws InterruptedException {
appiumDriver.quit();
}
/**
* 登录
* @throws InterruptedException
*/
@Test
public void Login() throws InterruptedException {
//--------------------------登录-------------------------------
int windowX = dimension.getWidth();
int windowY = dimension.getHeight();
//点击我的坐标
Thread.sleep(1000);
new TouchAction(appiumDriver).tap(CoordinateUtil.Tap_wode(windowX,windowY) ).perform();
//清空手机号并输入新手机号
appiumDriver.findElementById(Android_JianKangOuHai.login_phone_et).clear();
appiumDriver.findElementById(Android_JianKangOuHai.login_phone_et).sendKeys("13276816154");
//输入密码
appiumDriver.findElementById(Android_JianKangOuHai.login_pwd_et).sendKeys("82116728zxg");
//隐藏键盘
new TouchAction(appiumDriver).tap(CoordinateUtil.Tap_hidekeybord(windowX,windowY)).perform();
//点击登录
appiumDriver.findElementById(Android_JianKangOuHai.login_tv).click();
//防止页面加载过慢
Thread.sleep(1000);
//-----------------------------退出登录--------------------------------
//点击我的
new TouchAction(appiumDriver).tap(CoordinateUtil.Tap_wode(windowX,windowY)).perform();
//防止页面加载过慢
Thread.sleep(1000);
//滑动屏幕
new TouchAction(appiumDriver).press(PointOption.point(610,1640))
.waitAction(WaitOptions.waitOptions(Duration.ofSeconds(1)))
.moveTo(PointOption.point(610,984)).release()
.perform();
//点击退出登录
appiumDriver.findElementById(Android_JianKangOuHai.out_login_tv).click();
//弹窗点击确定
appiumDriver.findElementById(Android_JianKangOuHai.btn_right_tv).click();
}
}