<input type="checkbox" value="true" id="cb_ID74"/>
<input type="checkbox" value="true" id="ckb_ID73"/>
//input
//input[position()=1]
//input[2]
//input[last()]
//input[contains(@id, ‘cb')]
==========================================
<div id="div1">
<h1>H1</h1>
<table id="t1">
</table>
</div>
<div id="div2">
<h1>H2</h1>
<table id="t2">
<tr>
<td id="td1">11</td>
<td id=“td2”>22</td>
</tr>
</table>
</div>
//div[h1[text()='H2']]
//div[h1[text()='H2‘]]/child::*
//div[h1[text()='H2']]/descendant::*
//div[h1[text()='H2']]/descendant::td[@id="td2"]
//div[*[text()='H2']]/descendant::td[@id="td2"]
//div[contains(@id, '2')]/descendant::tr[td]
//div[contains(@id, '1')]/following-sibling::*
==========================================
<table id="t1">
<tr>
<td>11</td>
<td>22</td>
</tr>
</table>
<table id="t2">
<tr>
<td>33</td>
<td>44</td>
</tr>
</table>
driver.findElement(By.xpath(“//tr[1]/td[1]”)) 11
table2.findElement(By.xpath(“//tr[1]/td[1]”)) 11
table2.findElement(By.xpath(“.//tr[1]/td[1]”)) 33
driver.switchTo().frame("i");
driver.findElement(By.id("txt1")).sendKeys("iframeTest");
driver.switchTo().window("new");
driver.findElement(By.id("kw")).sendKeys("WindowTest");
for (String handle : driver.getWindowHandles()) {
driver.switchTo().window(handle);
if (driver.getTitle().trim().equalsIgnoreCase("????,????")) {
break;
}
}
driver.findElement(By.id("kw")).sendKeys("WindowTest");
driver.switchTo().frame("i");
driver.findElement(By.id("txt1")).sendKeys("iframeTest");
driver.switchTo().frame("navigation");
// Selects the first frame on the page
driver.switchTo().defaultContent();
System.out.println(driver.getPageSource());
driver.switchTo().frame("detail");
driver.switchTo().frame("header"); X
<head>
<script type="text/javascript">
function display_alert() {
alert("I am an alert box!!")
}
</script>
</head>
<body>
<button id=“btn” onclick="display_alert()">test alert</button>
</body>
driver.findElement(By.id("btn")).click();
Alert alert = driver.switchTo().alert();
alert.accept();
//Open or Save Dialog
Robot robot = new Robot();
//Alt + S to select save
robot.keyPress(KeyEvent.VK_ALT);
robot.keyPress(KeyEvent.VK_S);
robot.keyRelease(KeyEvent.VK_ALT);
robot.delay(3000);
//Then type several chars
robot.keyPress(KeyEvent.VK_T);
robot.keyPress(KeyEvent.VK_E);
robot.keyPress(KeyEvent.VK_S);
robot.keyPress(KeyEvent.VK_T);
//Then press enter
robot.keyPress(KeyEvent.VK_ENTER);
robot.keyRelease(KeyEvent.VK_ENTER);
AutoIt x = new AutoIt();
x.winActivate("File Download");
x.winWaitActive("File Download");
x.controlClick("File Download", "", "[TEXT:&Save]");
x.winWaitActive("Save As");
x.controlFocus("Save As", "", "[CLASS:Edit]");
x.send(“C:\\testSaveDialog”);
x.controlClick("Save As", "", "[TEXT:&Save]");
if(x.waitWinExists("Download complete", 50))
{
x.controlClick("Download complete", "", "[TEXT:Close]");
}
<select name="combobox">
<option value="1">item1</option>
<option value="2" selected>item2</option>
<option value="3">item3</option>
</select>
WebElement ComboBox = driver.findElement(By.name("combobox"));
Select select = new Select(ComboBox);
select.selectByVisibleText("item1");
Custom Select:
WebElement divList = driver.findElement(By.xpath("//body/div[last() - 1]/child::div"));
List<WebElement> options = divList.findElements(By.tagName("div"));
<table id="t1">
<tr>
<td>td1</td>
<td>td2</td>
</tr>
</table>
/**
* Get specific cell element from table
* @param table
* @param rowIndex - start from 0
* @param columnIndex - start from 0
* @return
*/
public static WebElement getCell(WebElement table, int rowIndex, int columnIndex) {
String xpathStr = ".//tr[" + (rowIndex + 1) + "]/td[" + (columnIndex + 1) + "]";
return table.findElement(By.xpath(xpathStr));
}
//Able to execute Javascript directly using JavascriptExecutor
public void JavascriptExecutorTest()
{
driver.get("http://www.baidu.com/"); ((JavascriptExecutor)driver).executeScript("document.getElementById(\"kw\").value = \"JavascriptExecutortest\"");
}
//Using JavaScript implement the functions which Webdriver API doesn’t provide.
/**
* Get the inner HTML of the element by id
* @param driver
* @param id
* @return
*/
public static String getInnerHTML(WebDriver driver, String id)
{
JavascriptExecutor js = (JavascriptExecutor) driver;
return (String) js.executeScript("return document.getElementById(" + "\"" + id + "\"" + ").innerHTML");
}
//continue to this website(not recommended)
driver.navigate().to("javascript:document.getElementById('overridelink').click()");
Appendix:
Firefinder plugin for Firefox
Official Selenium Blog
http://seleniumhq.wordpress.com/
Google Code - Selenium
http://code.google.com/p/selenium/
Google Group - WebDriver
http://groups.google.com/group/webdriver
Google Group - Selenium Users
http://groups.google.com/group/selenium-users
LinkedIn – Selenium-WebDriver
http://www.linkedin.com/groups/Selenium-WebDriver-4067187
XML Path Language (XPath)
http://www.w3.org/TR/xpath/
Document Object Model (DOM)
http://www.w3.org/DOM/DOMTR
分享到:
相关推荐
### Selenium 知识点详解 #### 一、Selenium 概述 Selenium 是一个用于自动化 Web 应用程序测试的工具集。它由 ThoughtWorks 公司开发,并且随着时间的发展已经成为一个开源项目,得到了广泛的社区支持。Selenium ...
Selenium 是一个强大的开源自动化测试框架,用于网页应用。它支持多种编程语言,如 Java、Python、C#、Ruby 等,使测试工程师能够编写脚本来模拟用户在浏览器中的各种交互行为。Selenium 4.5.0 版本是该框架的一个...
Selenium 是一个强大的自动化测试工具,它允许程序员模拟真实用户在浏览器中的操作,进行Web应用程序的测试。在Selenium框架中,浏览器驱动是关键组成部分,它充当了Selenium与特定浏览器之间的桥梁。本文将深入探讨...
Selenium 是一个强大的开源自动化测试框架,主要用于网页应用的测试。在Java版本4.1.2中,Selenium提供了一套完整的API,使得开发者能够用Java编写自动化测试脚本,进行功能性和回归性测试。这个版本是Selenium的...
在IT行业中,Selenium是一个广泛使用的自动化测试框架,主要用于Web应用程序的测试。它提供了一组强大的API,使得开发者能够用多种编程语言(如Java、Python、C#等)编写自动化测试脚本。在这个主题中,我们将深入...
《Selenium 4.8.3:Web自动化测试的强大工具》 Selenium 是一款广泛使用的开源自动化测试框架,用于测试Web应用程序。Selenium 4.8.3版本的发布,为用户提供了最新的功能和改进,进一步提升了自动化测试的效率和...
Selenium 是一个强大的开源自动化测试框架,用于网页应用。它支持多种编程语言,如Java、Python、C#、Ruby等,使得测试工程师可以编写可跨浏览器执行的测试脚本。Selenium_v2.5是该框架的一个特定版本,它带来了许多...
标题 "selenium-java-4.0.0-alpha-6_javaselenium_" 指的是 Selenium 的一个 Java 版本的软件包,具体是 4.0.0 的第六个 Alpha 版本。Selenium 是一个广泛使用的自动化测试工具,主要用于 web 应用程序的测试。它...
**Python+Selenium自动化测试入门** Selenium是一款强大的开源测试工具,专用于Web应用程序的自动化测试。它可以在浏览器中运行测试,模拟真实用户的行为,支持Firefox、IE、Mozilla等多种浏览器,并且兼容JAVA、C#...
【标题】"selenium+JAVA+chrome自动化测试demo"揭示了这个项目是关于使用Selenium WebDriver结合Java语言来实现Chrome浏览器的自动化测试。Selenium是一个强大的开源自动化测试框架,允许开发者编写可运行在多种...
【Selenium-Python 中文手册】是一份详细的文档,它为使用Python进行Selenium测试提供了指导。Selenium是一个强大的Web自动化测试工具,Python版本的Selenium绑定提供了简单易用的API,使得用户能够轻松地编写功能性...
`selenium-java.jar` 是一个与 Selenium 相关的 Java 库文件,它包含了用于在 Windows 和 Mac 操作系统上执行自动化测试的组件。Selenium 是一款广泛使用的开源工具,主要用于 web 浏览器自动化,帮助开发者和测试...
【Selenium】是一个强大的自动化测试工具,主要用于模拟真实用户在Web浏览器上的操作。它支持多种浏览器,如Chrome、Firefox、IE等,通过编程接口(API)实现网页元素的交互,如点击、输入、导航等。Selenium的核心...
由于Selenium Server在启动浏览器时做了手脚,所以Selenium Server会接收到所有由它启动的浏览器发送的请求。 (6).Selenium Server接收到浏览器的发送的Http请求后,自己重组Http请求,获取对应的Web页面。 (7)....
Selenium IDE是一款强大的自动化测试工具,专为Web应用程序设计,尤其受到测试工程师的青睐。它是一个免费的插件,能够录制、回放和编辑测试脚本,极大地提升了测试效率。在本文中,我们将深入探讨Selenium IDE的...
【标题】"selenium webdriver+chrome插件.zip" 涉及的核心知识点是Selenium WebDriver,特别是它在Chrome浏览器中的应用以及与Firefox的交互。这个压缩包包含了Selenium IDE的Chrome插件,以及对应的WebDriver驱动...
Selenium WebDriver是一款强大的开源自动化测试工具,用于模拟真实用户在浏览器上的操作,广泛应用于Web应用程序的测试。本书“精通Selenium-WebDriver电子书+项目代码”是深入学习这个技术的重要资源,结合理论与...
### Selenium测试工具研究报告 #### 一、Selenium测试工具简述 ##### 1.1 Selenium简介 Selenium是由ThoughtWorks公司开发的一款强大的开源Web功能测试工具系列,旨在为Web应用程序提供自动化测试解决方案。该...
Selenium 是一个强大的开源自动化测试框架,用于网页应用程序。它支持多种编程语言,包括 Python,使得测试脚本的编写变得简单高效。Selenium 3.8.0 版本是该框架的一个稳定版本,提供了许多改进和修复,以增强其...