我正在尋求一些建議。我目前正在嘗試使用 selenium (Java) 為 Angular 應用程式創建端到端測驗。由于頁面上的動態元素,我認為我不需要提及這個程序有多么痛苦。
我看過使用 NgWebDriver。但我對這種方法有疑問。我在頁面上的所有元素如下所示:
<button _ngcontent-tmh-c54="" id="addNewPartnerSystem" pbutton="" label="Add New Partner System" type="button" class="p-element ui-button p-button p-component ng-star-inserted"><span class="p-button-label">Add New Partner System</span></button>
我嘗試使用開發人員提供的 id,在本例中為“addNewPartnerSystem”,但 selenium 顯示未找到元素錯誤。
任何幫助將不勝感激。謝謝!
uj5u.com熱心網友回復:
由于您的頁面是動態呈現的并且假設您選擇的 XPath 是正確的,因此您需要等到頁面加載完畢。Thread.sleep(milliseconds) 可以解決問題。
uj5u.com熱心網友回復:
您已嘗試以下解決方案
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;
elem = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("Xpath")));
elem.click();
或者
WebElement element = driver.findElement(By.id("id"));
JavascriptExecutor executor = (JavascriptExecutor)driver;
executor.executeScript("arguments[0].click();", element);
讓我知道這是否不適合您
uj5u.com熱心網友回復:
似乎我所要做的就是在 iFrame 之間切換。感謝您的意見和建議
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/478014.html
