selenium详细api

se 个人 ee  企业  me移动   jvm  jre环境  jdk工具包

StreamBroswer s=new StreamBroswer()

s.FinishProcess("Firefox.exe")

Driver

1.new FirefoxDriver(p)

FirefoxProflie p=new FirefoxProfile(new file(""))

2.new ChromeDriver

System.setProperty("webdriver.chrome.driver",path)

3.new InternetExplorerDriver

System.setProperty("webdriver.ie.drvier",path)

ChromeDriverService service = new ChromeDriverService.Builder() . usingDriverExecutable (new File("E:\SeleniumWebDriver\chromedriver_win_23.0.1240.0\chromedriver.exe")).usingAnyFreePort().build();
service.start();
driver = new ChromeDriver();
driver.get("http://www.baidu.com");
driver.quit();
// 关闭 ChromeDriver 接口
service.stop();

定位

By.id

By.xpath

By.cssSelector

By.className

By.linkText

By.tagName

By.name

By.paritialLinkText  部分链接文字进行匹配

xpath

/ 根节点  //从匹配中选择,不考虑位置 . 当前节点  ..当前节点父节点  @元素属性

div 选取div的所有子节点

/book[last()-1]

/title[contains(text(),'') and @lang='']   /title[contains(text(),'')][@lang='']]

/title[starts-with(@lang,'') or @id='']

/bookPrice[price>35]

/book/title | /book/a  /book/title & /book/a

submit

element.submit   getAttribute("style")

isEnabled  isDisplayed  isSelected

Navigate

driver.Navigate.to/back/forward/refresh

Manage

driver.manage.window.maxmize/getSize/getPosition

driver.manage.addCookies

drvier.manage.timeouts.implicitlyWait

switchTo

driver.switchTo.alert.accept/dismiss

driver.switchTo.defaultContent

driver.switchTo.frame(index/idOrName/webelement)

driver.switchTo.parentFrame()

driver.switchTo.window(windowname)

set<>=driver.getWindowHandles

Select

Select s=new Select(element)

s.selectByIndex(0)

s.selectByValue("")

s.selectByVisibleText("")

Action

Action a=new Action(driver)

a.moveToElement(element).click().perform();  移动到

a.clickAndHold(element).perform();  按住不放

a.doubleClick(element).perform();

a.contentClick(element).perform()  右键

a.drapAndDrop(source, target).perform();

a.clickAndHold(source). moveToElement (target).perform()

a.release()

a.keyDown(key.SHIFT) 按下

a.keyUp(key.CRTL) 释放

a.keyDown().keyUp().perform();

a.keyDown().sendKeys("").perform();

a.keyDown(Keys.CONTROL).sendKeys("v").perform();

显性等待:

明确等待某个元素出现或者可以点击,等不到就一直等,直到timeout抛出exception

webElemenet e=

(new webDirverWait(driver,10)).until(ExpectedConditions.presenseOfElementLocated(element));

隐性等待:

全局等待,对所有元素设置统一的超时时间

driver.manage.timeouts.implicitlyWiat(second.TimeUnit.SECONDS)

testng

BeforeClass

BeforeTest

Test

Assert.assertTure/assertEquals(e,a)

suite/test/classes/class name=/method preserve-order/<include name>

<listener  class-name="">

test/<parameter name=" browser "  value="">

@parameter({"browser"})

框架使用:

log.deBug()

log.writeErrorLog()

1.Startbrowser.setUp("")

2.page=new Page(driver)

3.manage.window.maxmize

4.(1)objectHandle.browserHandle("")/frameHandle/checkboxHandle/dateHandle(driver,element,2013,12,12)

(2)FrameFunction f=new FrameFunction;

page.getElement()

原文地址:https://www.cnblogs.com/season-xie/p/5330847.html