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

1. 百度搜索输入 anthony_tester csdn

2.点击查询,观察结果

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

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

相关selenium自动化脚本如下

package lessons;

import java.util.concurrent.TimeUnit;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;

public class StringOpration {

	public static void main(String[] args) throws InterruptedException {
		
		System.setProperty("webdriver.chrome.driver", ".\\Tools\\chromedriver.exe");
        
		WebDriver driver = new ChromeDriver();
		
		driver.get("https://www.baidu.com");
		driver.manage().window().maximize();
		driver.manage().timeouts().implicitlyWait(2, TimeUnit.SECONDS);
		
		driver.findElement(By.id("kw")).sendKeys("anthony-tester csdn");
		driver.findElement(By.id("su")).click();
		
		Thread.sleep(1000);
		
		// 定位 百度为您找到相关结果约xxxx个 这个元素
		WebElement result = driver.findElement(By.xpath("//*/div[@class='nums']"));
		
		// 获取该字段值  "搜索工具 百度为您找到相关结果约xxxxx个"
	    String result_string = result.getText();
	    // 根据约这个词切片,取第二片字符串,应该得到“xxxx个”
		String st1 = result_string.split("约")[1];
		//System.out.println(st1);
		
		//再切一次,去除个,得到我们想要的数字结果数
		String search_number = st1.split("个")[0];
		System.out.println(search_number);
		
		driver.quit();
		
	}

}


Logo

这里是“一人公司”的成长家园。我们提供从产品曝光、技术变现到法律财税的全栈内容,并连接云服务、办公空间等稀缺资源,助你专注创造,无忧运营。

更多推荐