Java+Selenium3方法篇47-字符串切片操作【转载】

本篇介绍,自动化测试中关于断言部分,可能经常遇到的场景。从一个字符串中找出一组数字。这个就需要用到字符串切片函数split()。看看这个场景:

1. 百度搜索输入 anthony_tester csdn

2.点击查询,观察结果

 

3. 观察红圈元素的xpath表达式

 

需要做的事情是:摘取出40,100这个数字。

相关selenium自动化脚本如下

[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.WebDriver;  
  7. import org.openqa.selenium.WebElement;  
  8. import org.openqa.selenium.chrome.ChromeDriver;  
  9.   
  10. public class StringOpration {  
  11.   
  12.     public static void main(String[] args) throws InterruptedException {  
  13.           
  14.         System.setProperty("webdriver.chrome.driver", ".\\Tools\\chromedriver.exe");  
  15.           
  16.         WebDriver driver = new ChromeDriver();  
  17.           
  18.         driver.get("https://www.baidu.com");  
  19.         driver.manage().window().maximize();  
  20.         driver.manage().timeouts().implicitlyWait(2, TimeUnit.SECONDS);  
  21.           
  22.         driver.findElement(By.id("kw")).sendKeys("anthony-tester csdn");  
  23.         driver.findElement(By.id("su")).click();  
  24.           
  25.         Thread.sleep(1000);  
  26.           
  27.         // 定位 百度为您找到相关结果约xxxx个 这个元素  
  28.         WebElement result = driver.findElement(By.xpath("//*/div[@class='nums']"));  
  29.           
  30.         // 获取该字段值  "搜索工具 百度为您找到相关结果约xxxxx个"  
  31.         String result_string = result.getText();  
  32.         // 根据约这个词切片,取第二片字符串,应该得到“xxxx个”  
  33.         String st1 = result_string.split("约")[1];  
  34.         //System.out.println(st1);  
  35.           
  36.         //再切一次,去除个,得到我们想要的数字结果数  
  37.         String search_number = st1.split("个")[0];  
  38.         System.out.println(search_number);  
  39.           
  40.         driver.quit();  
  41.           
  42.     }  
  43.   
  44. }  

posted on 2018-05-03 16:35  okeymen  阅读(84)  评论(0)    收藏  举报

导航