|
2#
楼主 |
发表于 2017-6-9 14:34:12
|
只看该作者
检查网络
/***
* 检查网络
* @return 是否正常
*/
public static boolean checkNet(){
String text=driver.getNetworkConnection().toString();
if(text.contains("Data: true"))
return true;
else
return false;
}
desc的view
/***
* 根据UIautomator底层方法得到对应desc的view
* @param desc名
* @return View
*/
public static WebElement getViewbyUidesc(String name){
return driver.findElementByAndroidUIAutomator("new UiSelector().descriptionContains(\""+name+"\")");
}
得到对应text的view
/***
* 根据UIautomator底层方法得到对应text的view
* @param text名
* @return View
*/
public static WebElement getViewbyUitext(String name){
return driver.findElementByAndroidUIAutomator("new UiSelector().textContains(\""+name+"\")");
}
超时时间:
driver.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS);
打印整个页面PageSource:
System.out.print(driver.getPageSource());
获取当前时间并截图,命名:
public static String getScreen(){
String fileRoute="路径";
SimpleDateFormat df = new SimpleDateFormat("yyyyMMddHHmm");
String picname=fileRoute+df.format(new Date()).toString()+".png";
File screen = driver.getScreenshotAs(OutputType.FILE);
System.out.println(picname);
File screenFile = new File(picname);
try {
FileUtils.copyFile(screen, screenFile);
String time=df.format(new Date()).toString();
System.out.println("当前时间"+time);
return time;
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
APP内上滑:
driver.swipe(250, 300, 250, 1400, 0);
APP内上滑:
driver.swipe(250,1400, 250,300 , 0);
WebView navigate 操作
//driver.navigate().forward(); // 前进
//driver.navigate().back(); // 后退
driver.navigate().refresh(); // 刷新``
切换WEBVIEW
/***
* 切换WEB页面查找元素
*/
public static void switchtoWeb(){
try {
Set<String> contextNames = driver.getContextHandles();
for (String contextName : contextNames) {
// 用于返回被测app是NATIVE_APP还是WEBVIEW,如果两者都有就是混合型App
if(contextName.contains("WEBVIEW")||contextName.contains("webview")){
driver.context(contextName);
System.out.println("跳转到web页 开始操作web页面");
}
}
}catch (Exception e) {
e.printStackTrace();
}
}
滑动相关
/***
* 上滑1/4屏幕
*/
public static void slideUP(){
int x=driver.manage().window().getSize().width;
int y=driver.manage().window().getSize().height;
driver.swipe(x/2, y/3*2, x/2, y/3*1, 0);
}
/***
* 下滑1/4屏幕
*/
public static void slideDown(){
int x=driver.manage().window().getSize().width;
int y=driver.manage().window().getSize().height;
driver.swipe(x/2, y/3*1, x/2, y/3*2, 0);
}
/***
* 左滑1/2屏幕
*/
public static void slideLeft(){
int x=driver.manage().window().getSize().width;
int y=driver.manage().window().getSize().height;
driver.swipe(x/4*3, y/2, x/4*1, y/2, 0);
}
/***
* 右滑1/2屏幕
*/
public static void slideRight(){
int x=driver.manage().window().getSize().width;
int y=driver.manage().window().getSize().height;
driver.swipe(x/4*1, y/2, x/4*3, y/2, 0);
}
/***
* 特殊上滑
* @param 传入从左到右宽度的百分比(1-99之间)
*/
public static void slideUP(int i){
Assert.assertFalse("上滑宽度传入错误", i<=0||i>=100);
int x=driver.manage().window().getSize().width;
int y=driver.manage().window().getSize().height;
driver.swipe(x/10*i, y/3*2, x/10*i, y/3*1, 0);
}
/***
* 特殊下滑
* @param 传入从左到右宽度的百分比(1-99之间)
*/
public static void slideDown(int i){
Assert.assertFalse("下滑宽度传入错误", i<=0||i>=100);
int x=driver.manage().window().getSize().width;
int y=driver.manage().window().getSize().height;
driver.swipe(x/10*i, y/3*1, x/10*i, y/3*2, 0);
}
/***
* 特殊左滑
* @param 传入从上到下宽度的百分比(1-99之间)
*/
public static void slideLeft(int i){
Assert.assertFalse("左滑宽度传入错误", i<=0||i>=100);
int x=driver.manage().window().getSize().width;
int y=driver.manage().window().getSize().height;
driver.swipe(x/4*3, y/10*i, x/4*2, y/10*i, 0);
}
/***
* 特殊右滑
* @param 传入从上到下宽度的百分比(1-99之间)
*/
public static void slideRight(int i){
Assert.assertFalse("左滑宽度传入错误", i<=0||i>=100);
int x=driver.manage().window().getSize().width;
int y=driver.manage().window().getSize().height;
driver.swipe(x/4*2, y/10*i, x/4*3, y/10*i, 0);
}
content-desc定位
/***
* 根据content-desc查找元素
* @param view的类型
* @param content-desc 的内容
* @return
*/
public static WebElement getViewbyXathwithcontentdesc(String view,String name){
return driver.findElementByXPath("//"+view+"[contains(@content-desc,'"+name+"')]");
}
|
|