2017-02-01 7 views
0

私は検証によってjqueryで追加するブートストラップのツールチップを持っています。私はSelenium上でそれをテストする必要があります(TooltipはSeleniumによってポップアップされません)。私はすべての方法を試みたが運がない。Selenium Tooltip Mouseoverが動作しない

私はFirefox 51vを使用しています。そして、Mavenのバージョン:

<dependency> 
    <groupId>org.seleniumhq.selenium</groupId> 
    <artifactId>selenium-java</artifactId> 
    <version>2.53.0</version> 
    <scope>test</scope> 
</dependency> 

HTMLコード:JavaScriptで

<input id="ele-id" class="text-right red-tooltip" maxlength="10" ng-change="validateFun()" data-original-title="" title="" type="text"> 

$('#ele-id').tooltip({title: 'Must be between 0 and 1', placement: 'right'}); 

と私のJavaのテストコード:

WebElement element = driver.findElement(By.id("ele-id")); 
String initialVal = element.getAttribute("value"); 
element.clear(); 
element.sendKeys("-1"); 
//element.click(); 
Actions action = new Actions(driver); 
//action.moveToElement(element).build().perform(); 
action.clickAndHold(element).perform(); 
//JavascriptExecutor executor = (JavascriptExecutor)driver; executor.executeScript("arguments[0].click();", element); 
Thread.sleep(2000); 
WebElement toolTipElement = driver.findElement(By.className("tooltip")); 
String toolTipText = toolTipElement.getText(); 
Assert.assertEquals("Must be between 0 and 1", toolTipText); 

I謝罪以上のコードIについて私はここに貼り付けて、私も試したコードをコメントしました。

+0

このように、要素をクリックするか、マウスを動かすとツールヒントが表示されるので、stackoverflowサイトのタグのように表示されます。 –

+0

@ GaurangShah - テキストボックスの上に手動でマウスを置くとツールチップが表示されます。手動で時間をテストしている間に私はテストケースを持ってきて成功です。 –

+0

私の質問は、ツールチップのクリックまたはマウスのホバーが必要ですか? –

答えて

0

私は非フォーカスを行なったし、私は可能なツールチップを読み取ることができるように、再び要素を集中します。

JavascriptExecutor executor = (JavascriptExecutor)driver; executor.executeScript("document.getElementById('ITEM_SMOOTHING_DEFAULT-value').blur();"); 
executor.executeScript("document.getElementById('ITEM_SMOOTHING_DEFAULT-value').focus();"); 
WebElement toolTipElement = driver.findElement(By.className("tooltip")); 
0

てみマウスホバーイベント

Actions actions = new Actions(driver); 
actions.moveToElement(element); 
actions.perform(); 
+0

org.openqa.selenium.UnsupportedCommandException:POST/session/fca599f1-d041-4eb3-b532-4fe8ce7968b8/movetoが既知のコマンドと一致しません –

+0

この問題の回避策はありますか? –

+1

@Rajesh webdriverに問題がありますが、geckodriverの問題です。 https://github.com/SeleniumHQ/selenium/issues/3287 –

関連する問題