Webdriver Seleniumを使用してメニューから要素を選択するには? マウス オーバー?で メニュー ドロップダウンが表示されます。
質問する
42711 次
4 に答える
7
2 つの方法で確認できます。1) 最初の方法は、アクション ビルダーを使用することです。
WebElement mnuElement;
WebElement submnuElement;
mnEle = driver.findElement(By.Id("mnEle")).Click();
sbEle = driver.findElement(By.Id("sbEle")).Click();
Actions builder = new Actions(driver);
// Move cursor to the Main Menu Element
builder.MoveToElement(mnEle).Perform();
// Giving 5 Secs for submenu to be displayed
Thread.sleep(5000L);
// Clicking on the Hidden SubMenu
driver.findElement(By.Id("sbEle")).Click();
こちらをご覧ください
2) 別のアプローチは、マウス ホバー イベントをシミュレートせずに、jscript を使用して必要な要素を直接クリックすることです。
String cssLocatorOfTheElement=....//locator of the element to click on
JavascriptExecutor js = (JavascriptExecutor) driver;
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("var x = $(\'"+cssLocatorOfTheElement+"\');");
stringBuilder.append("x.click();");
js.executeScript(stringBuilder.toString());
これがうまくいくことを願っています)
于 2012-09-05T15:49:32.940 に答える
0
mouseOver イベントをシミュレートしてから、好きな要素を選択します。
var elementToShowMenu = Driver.FindElement(Byl.Id("some id"));
new Actions(Driver).MoveToElement(elementToShowMenu).Release(elementToShowMenu).Build().Perform();
var menuElement = Driver.FindElement(Byl.Id("your menu id"));
于 2012-09-05T06:31:45.057 に答える
0
タグの非表示のアンカー リンクをクリックする方法は次のとおりです。Javascript によって動的に生成されるリンクです。
public static void mouseClickByLocator( String cssLocator ) {
String locator = cssLocator;
WebElement el = driver.findElement( By.cssSelector( locator ) );
Actions builder = new Actions(driver);
builder.moveToElement( el ).click( el );
builder.perform();
}
于 2012-12-18T17:47:11.057 に答える