在Java中使用Selenium webdriver如何調整文本區域大小/ 我想通過拖動元素的右下角來擴展textarea。Selenium WebDriver調整文本區域大小
我已經試過這樣的事情,但它不都
new Actions(webdriver).dragAndDropBy(element, height, width).perform()
在Java中使用Selenium webdriver如何調整文本區域大小/ 我想通過拖動元素的右下角來擴展textarea。Selenium WebDriver調整文本區域大小
我已經試過這樣的事情,但它不都
new Actions(webdriver).dragAndDropBy(element, height, width).perform()
更改的元素,我沒有任何東西來測試這個問題,但我猜你用沒了dragAndDropBy方法的原因沒有用,因爲它不會點擊元素的右下角。我相信你會需要這樣的東西:
Actions action = new Actions(driver);
action.moveToElement(toElement, xOffset, yOffset); //moves to bottom right corner
action.clickAndHold();
action.moveByOffset(xOffset, yOffset);
action.release();
action.perform();
偏移量取決於您提到的文本區域的大小。您可以查看更多關於Action類的文章:http://selenium.googlecode.com/git/docs/api/java/org/openqa/selenium/interactions/Actions.html。希望這有助於。
我想原因你的代碼是行不通的,因爲不包括build()方法是你可以試試這個,告訴如果現在working-
new Actions(webdriver).dragAndDropBy(element, height, width).build().perform();
這可以用JavaScriptExecutor界面來完成。 JavaScriptExecutor是一個接口,它提供了通過selenium webdriver執行Javascript的機制,藉助於此可以更改textarea的行和列屬性,因此textarea可以隨其調整大小。希望這會幫助你 -
public static void main(String[] args) {
ProfilesIni profile = new ProfilesIni();
FirefoxProfile a = profile.getProfile("default");
WebDriver driver = new FirefoxDriver(a);
driver.get("http://localhost/testfolder/textarea.html");
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("document.getElementById('textarea').setAttribute('rows', '30')");
js.executeScript("document.getElementById('textarea').setAttribute('cols', '50')");
}
剛剛找到textarea元素與元素定位器然後設置「行」和「的cols」屬性值。
我希望這可以幫助你。