目前正在硒的webdriver和使用的Java ..在試運行的Firefox 26.0。在Eclipse中我使用TestNG的框架工作..怎麼能跳過同一類 - 硒網絡驅動器測試
- 如果我正在運行測試名稱Test.java。因爲我有許多過濾器部分組合與下拉值以及圖像中顯示的日期選擇器和多選框。
在所述濾波器部我已經編寫的代碼如下基於:
Log.info("Clicking on Visualization dropdown");
JavascriptExecutor executor = (JavascriptExecutor)driver;
executor.executeScript("document.getElementById('visualizationId').style.display='block';");
Select select = new Select(driver.findElement(By.id("visualizationId")));
select.selectByVisibleText("Week");
Thread.sleep(6000);
Log.info("Clicking on Period dropdown");
JavascriptExecutor executor1 = (JavascriptExecutor)driver;
executor1.executeScript("document.getElementById('periodId').style.display='block';");
Select select1 = new Select(driver.findElement(By.id("periodId")));
select1.selectByVisibleText("Last 4 Weeks");
Thread.sleep(6000);
Log.info("Clicking on Apply Filter button");
driver.findElement(By.id("kpiFilterSubmit")).click();// This is the one combination of filter section
//Filter selection-2
Log.info("Clicking on Visualization dropdown");
JavascriptExecutor executor3 = (JavascriptExecutor)driver;
executor3.executeScript("document.getElementById('visualizationId').style.display='block';");
Select select3 = new Select(driver.findElement(By.id("visualizationId")));
select3.selectByVisibleText("ICC");
Thread.sleep(6000);
Log.info("Clicking on Type dropdown");
JavascriptExecutor executor02 = (JavascriptExecutor)driver;
executor02.executeScript("document.getElementById('classificationId').style.display='block';");
Select select02 = new Select(driver.findElement(By.id("classificationId")));
select02.selectByVisibleText("Internal PRs");
Thread.sleep(6000);
Log.info("Clicking on Priority dropdown");
JavascriptExecutor executor5 = (JavascriptExecutor)driver;
executor5.executeScript("document.getElementById('priorityId').style.display='block';");
Select select5 = new Select(driver.findElement(By.id("priorityId")));
select5.deselectAll();
select5.selectByVisibleText("Not Urgent");
Thread.sleep(6000);
Log.info("Clicking on Apply Filter button");
driver.findElement(By.id("kpiFilterSubmit")).click();
Thread.sleep(6000);// Second combination of filter section.
例如,如果一段時間我不能能夠識別元件或一些其它問題通常意味着代碼將停止並顯示錯誤。但在我的情況下,我想跳過特定的過濾器部分,我需要移動到過濾器部分的其他組合。請幫我做更好的標準代碼..我學習Java和硒的網絡驅動器。在我的情況下
Jugaad將爲每個部分使用try catch。理想情況下,您應該處理每個可能會引發錯誤的情況,即使用適當的等待,檢查元素是否存在,然後僅對其執行任何操作等。另一方面,您可以使用像testNg這樣的框架來處理每個測試用例。 – Husam
可能有更好的方法:按下「應用過濾器」後,頁面可能會根據下拉菜單中的值向服務器發送URL請求。因此,不必選擇所有這些值並單擊「應用過濾器」,也可以簡單地構建URL字符串並使用Web驅動程序導航到它。如果您提供您嘗試自動執行的網頁的網址,那麼我可能會幫助您解決問題。 –
我也有同樣的問題,但仍然在等待更好的解決方案...如果你找到答案請讓我知道 –