Webdriver 操作 build.perform()

Wbdriver Actions build.perform()

谁能告诉我 Selenium 操作中 build.perform()perform() 之间的区别?

示例:

actions.moveToElement(menuHoverLink).perform(); 

actions.moveToElement(menuHoverLink).build().perform();

在您的场景中,同时使用两者不会有什么不同。当您要执行多项操作时,就会出现差异,例如:

Actions builder = new Actions(driver); 
builder.clickAndHold(element1)
.clickAndHold(element2)
.click()
.build()
.perform();

在上面的代码中,我们执行了多个操作,因此我们必须使用 build() 将所有操作编译为一个步骤。因此 build() 方法用于将所有列出的操作编译为一个步骤。 我们在执行一系列操作时使用 build() ,如果我们执行单个操作则不需要使用。

聚会有点晚了,但是你不必使用 build() 除非你想传递一个 IActions 对象,因为 build() 是由 perform()(参见 WebDriver Actions.Perform() or Actions.Build().Perform()