1. link、button
//link driver.findElement(By.linkText(linkText)).click(); driver.findElement(By.partialLinkText(linkText)).click(); //button element.click();
2. Textbox
element.sendKeys("");
3. Upload
element.sendKeys("D est.txt");
4. Mouse Event——ActionChains()
Actions as = new Actions(driver); //悬停 as.moveToElement(element); //拖拽 as.dragAndDrop(element, element); //双击 as.doubleClick(element); //右击 as.contextClick(element);
5. DropDown:
1)<Select>标签的下拉菜单
Select s = new Select(element); //取消所有选择 s.deselectAll(); //通过index取消 s.deselectByIndex(0); //通过vlaue取消 s.deselectByValue("string"); //通过text获取元素取消 s.deselectByVisibleText("string"); //获得所有的option List<WebElement> list =s.getAllSelectedOptions(); //获得所有的option s.getOptions(); //获得第一个被选择的option s.getFirstSelectedOption(); //是否是多选 s.isMultiple(); //通过index获取元素 s.selectByIndex(0); //value s.selectByValue("string"); //text s.selectByVisibleText("string");
2)非<select>标签——层级定位
Dropdown1 = driver.find_element_by_id(‘id’) #先定位到dropdown
Dropdown1.find_element_by_id(“li2_input_2”) #再定位到dropdown中的值
3)使用js实现:
6. Alert
Alert a = driver.switchTo().alert(); //确认 a.accept(); //取消 a.dismiss(); //获取值 a.getText(); //输入值 a.sendKeys("string");
7. Window
//浏览器的刷新 driver.navigate().refresh(); //浏览器退回 driver.navigate().back(); //浏览器前进 driver.navigate().forward(); //浏览器跳转 driver.navigate().to(""); //根据URL浏览器跳转 driver.navigate().to("URL"); //跳转 driver.switchTo().window("");
8. frame
//根据下标跳转 driver.switchTo().frame(0); //根据name跳转 driver.switchTo().frame(""); //根据元素跳转 driver.switchTo().frame(element);
9.状态
Boolean b = driver.findElement(By.id("")).isDisplayed(); Boolean b1 = driver.findElement(By.id("")).isEnabled(); Boolean b2 = driver.findElement(By.id("")).isSelected();
10.JS
// 创建一个JavascriptExecutor对象 JavascriptExecutor js= (JavascriptExecutor)driver; username.sendKeys("abcdefg"); // 设置颜色 js.executeScript("arguments[0].setAttribute('style', 'background: yellow; border: 2px solid red;');",username);