各种方法的封装

1.Alert框

//判断是否存在弹出提示框,如果存在,点击"确定",否则跳过
	public boolean isAlertPresent(){
		try{
			driver.switchTo().alert();
			System.out.println("存在alert框");
			//driver.switchTo().alert().accept();
			return true;
		}catch (NoAlertPresentException ex) {
			System.out.println("不存在alert框");
			return false;
		}	
	}	
	//提示框点击"确定"
	public void comfirm_Alert(){		
		Alert alert =  driver.switchTo().alert();
		alert.accept();
	}	
	//提示框点击"取消"
	public void cancel_Alert(){
		Alert alert =  driver.switchTo().alert();
		alert.dismiss();		
	}

2.检查元素是否存在

public static boolean checkexist(WebDriver driver,By by){
		try{
			return driver.findElement(by).isDisplayed();	
		}catch (Exception e) {			
			return false;
		}
	}
	
	public static boolean checkexist(WebDriver driver,WebElement WebElement){
		try{
			return WebElement.isDisplayed();	
		}catch (Exception e) {			
			return false;
		}
	}
	
	public static boolean checkexist(WebDriver driver,WebElement WebElement,int x){		
		try{
			for(int i=0;i<x;i++){
				if(WebElement.isDisplayed()){
					return true;
				}
				else{				
						Thread.sleep(3000);				
				}
			}
		}catch (Exception e) {
			return false;
		}
		return false;		
	}

3.鼠标操作

//右键鼠标
	public void right_mouse(WebDriver driver,WebElement cc){
		Actions ac = new Actions(driver);
		ac.contextClick(cc).perform();		
	}
	//双击鼠标
	public void double_mouse(WebDriver driver,WebElement cc){
		Actions ac = new Actions(driver);		
		ac.doubleClick(cc).perform();
	}
	//鼠标悬浮操作
	public void move_mouse(WebDriver driver,WebElement cc){
		Actions ac = new Actions(driver);
		ac.moveToElement(cc).perform();
	}

4.截图方法

public  static void screenShot(WebDriver driver) {
	    String dir_name = "screenshot";  // 这里定义了截图存放目录名,存放在当前项目的路径下,并会生成"screenshot"目录
	    if (!(new File(dir_name).isDirectory())) {  // 判断是否存在该目录
	        new File(dir_name).mkdir();  // 如果不存在则新建一个目录
	    } 
	    SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd-HHmmss");
	    String time = sdf.format(new Date());  // 这里格式化当前时间,例如20120406-165210,后面用的着
	 
	    try {
	        File source_file = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);  // 关键代码,执行屏幕截图,默认会把截图保存到temp目录
	        FileUtils.copyFile(source_file, new File(dir_name + File.separator + time + ".jpg"));  // 这里将截图另存到我们需要保存的目录,例如screenshot\20120406-165210.jpg
	    } catch (IOException e) {
	        e.printStackTrace();
	    }
	}

5.等待元素

public static void waitelement(WebDriver driver,final WebElement  webelement){
		WebDriverWait wait = new WebDriverWait(driver, 10);
		wait.until(new ExpectedCondition<WebElement>() {

			@Override
			public WebElement apply(WebDriver arg0) {
				return webelement;
			}			
		});
		
	} 


6.键盘操作

public static void keyboard(WebDriver driver,Keys key){
		Actions actionObject = new Actions(driver);
		actionObject.sendKeys(key).perform();
		
		//如果需要按组合键,并且恢复初始状态。需要先keyDown再keyUp
//		actionObject.keyDown(Keys.CONTROL).sendKeys(Keys.F5).keyUp(Keys.CONTROL).perform();
		
		//如果单独对某个元素模拟键盘操作
//		WebElement password=driver.findElement(By.cssSelector("input#EmployeePassWord"));		
//		password.sendKeys("123456",Keys.ENTER);
		
	} 


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值