WebDriver应用实例(java)——在Ajax产生的浮动框中单击选择包含某个关键字选项

        某些被测试的页面包含Ajax的局部刷新机制,并且会产生显示多条数据的浮动框,需要单击选择浮动框中包含某个关键字的选项。

        被测试的网页:http://www.sogou.com

        实例代码:

package cn.om.webdriverapi;

import org.testng.annotations.Test;
import org.testng.annotations.BeforeMethod;
import java.util.List;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.AfterMethod;

public class TestAjaxDivOption {

	WebDriver driver;
	String url;

	@Test
	public void testAjaxDivOption() {
		driver.get(url);
		WebElement input=driver.findElement(By.id("query"));
		//点击搜索框,使得浮动框显示出来
		input.click();
		//把浮动框里的所有选项都存在suggetionOptions里
		List<WebElement> suggetionOptions=driver.findElements(By.xpath("//div[@id='vl']/div/ul/li"));
		//for循环,查找想要的对象
		for(WebElement element:suggetionOptions){
			//把每一项的内容与目标内容进行比较,查找到想要的那个element,点击
			System.out.println(element.getText());
			if(element.getText().contains("无人机")){//这里比较的内容根据实际悬浮的内容来填写
				System.out.println(element.getText());
				element.click();
				break;
			}
		}
		try {
			Thread.sleep(5000);
		} catch (InterruptedException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
	}

	@BeforeMethod
	public void beforeMethod() {
		url = "http://www.sogou.com";
		System.setProperty("webdriver.firefox.bin", "E:/Mozilla Firefox/firefox.exe");
		driver = new FirefoxDriver();

	}

	@AfterMethod
	public void afterMethod() {
		driver.quit();
	}

}

猜你喜欢

转载自blog.csdn.net/vikeyyyy/article/details/80183140