[Selenium]點擊下拉框之后,從下拉列表選擇元素進行點擊很容易失敗


點擊下拉框之后,下拉列表會顯示出來,但是有時候下拉列表會很快就消失掉,導致后面選擇元素的時候會失敗。

像這種情況,需要將鼠標移動到下拉列表上,使下拉列表維持顯示,然后才選擇元素進行點擊。

將鼠標移動到下拉列表上,有時候只要提供整個下拉列表的Dom結構就可以,有時候下拉列表很長,這種方式也會失敗。

后來采用計算下拉列表的大小,給一點偏移量來進行移動,比較好使。

/**
	 * Click drop down control of Asset Class Set in Asset Class Selection Dialog
	 * @author jzhang6
	 */
	public List<WebElement> clickDropDownControlOfACSetInACSelectionDialog() {
		Actions action = new Actions(driver);
		WebElement dropDownControl=page.getDropDownControlOfACSetInACSelectionDialog();
		action.click(dropDownControl);
		WebElement dropDownMenu=page.getDropDownMenuOfACSetInACSelectionDialog();
		Dimension menuSize=dropDownMenu.getSize();
		int locx=(menuSize.width)/10;
		int locy=(menuSize.height)/10;
		action.moveToElement(dropDownMenu,locx,locy).perform();
		List<WebElement> li=page.getListOfACSetInACSelectionDialog();
		Assert.assertTrue(li.size()>0, "Drop down list of Assert Class Set should be expanded");
		return li;
	}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM