Java+Selenium3方法篇27-利用JS处理元素高亮显示【转载】

  这篇来玩一个好玩的测试,就是利用javascript让测试过程中的元素高亮显示,例如在登录框,让输入框背景颜色设置成黄色,边框设置2个像素,颜色是红色。这个问题,我在一家公司的笔试题上看见过,所以这里就实现了测试下。相关脚本如下。

[java] view plain copy
  1. package lessons;  
  2.   
  3. import java.util.concurrent.TimeUnit;  
  4.   
  5. import org.openqa.selenium.By;  
  6. import org.openqa.selenium.JavascriptExecutor;  
  7. import org.openqa.selenium.WebDriver;  
  8. import org.openqa.selenium.WebElement;  
  9. import org.openqa.selenium.chrome.ChromeDriver;  
  10.   
  11. public class ElementOpration {  
  12.     public static void main(String[] args) throws Exception {    
  13.           
  14.         System.setProperty("webdriver.chrome.driver", ".\\Tools\\chromedriver.exe");    
  15.              
  16.         WebDriver driver = new ChromeDriver();    
  17.        
  18.         driver.manage().window().maximize();    
  19.          
  20.         driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);  
  21.             
  22.         driver.get("https://www.baidu.com/");    
  23.          
  24.         Thread.sleep(2000);  
  25.           
  26.         // 点击登录  
  27.         driver.findElement(By.xpath("//*[@id='u1']/a[7]")).click();  
  28.         Thread.sleep(500);  
  29.           
  30.         WebElement username = driver.findElement(By.id("TANGRAM__PSP_8__userName"));  
  31.           
  32.         // 创建一个JavascriptExecutor对象  
  33.         JavascriptExecutor js= (JavascriptExecutor)driver;  
  34.           
  35.         username.sendKeys("abcdefg");  
  36.         // 设置颜色  
  37.         js.executeScript("arguments[0].setAttribute('style', 'background: yellow; border: 2px solid red;');",username);  
  38.           
  39.         WebElement password = driver.findElement(By.id("TANGRAM__PSP_8__password"));  
  40.         js.executeScript("arguments[0].setAttribute('style', 'background: yellow; border: 2px solid red;');",password);  
  41.           
  42.          
  43.     }    
  44. }  

       运行结果:输入过程不会变颜色,输入结束,里面变成我们想要的红色边框和黄色背景。这个效果,好像在公司里面给别人颜色demo,看起来很酷,其他的好像没有多大用处。

 

posted on 2018-04-28 13:44  okeymen  阅读(77)  评论(0)    收藏  举报

导航