Selenium進行操做後頁面文本元素的驗證方法

在實際測試項目中,咱們常常要進行操做後要對頁面文本元素進行比對來驗證測試結果。下面我是寫了一個公共方法,測試項目中要進行文本比對的地方都調用該方法。css

具體實現步驟以下:java

第一步:在基礎類BaseTest中,寫一個「頁面刷新後文本比對」方法witeForPageRefeshByText()。app

代碼以下:   ide

public void witeForPageRefeshByText(WebDriver driver,

           final String cssSelector, final String text, final boolean exist) {

       // int index = exist == true ? 0 : -1;

       WebElement lasttr = (new WebDriverWait(driver, 40))

              .until(new ExpectedCondition<WebElement>() {

                  @Override

                  public WebElement apply(WebDriver d) {

                     WebElement tbody = driver.findElement(By

                            .cssSelector(cssSelector));

                     if (exist == true) {

                         if (tbody.getText().indexOf(text) > 0) {

                             return tbody;

                         } else {

                            return null;

                         }

                     } else {

                         if (tbody.getText().indexOf(text) == -1) {

                            return tbody;

                         } else {

                            return null;

                         }

                     }

                  }

              });

    }

第二步:在測試case中,繼承BaseTest基礎類(extends BaseTest)。在要作結果比對的地方調用「頁面刷新後文本比對」方法witeForPageRefeshByText()。測試

2.1新增菜單後,刷新頁面,比對結果,代碼以下:code

//新增菜單操做後,刷新頁面,比對結果

witeForPageRefeshByText(driver, "#data_table > tbody", code,true);

2.2刪除菜單記錄後,刷新頁面,比對結果,代碼以下:繼承

 //刪除後刷新數據列表界面,比較名稱是否存在

 witeForPageRefeshByText(driver, "#data_table > tbody", code, false);
相關文章
相關標籤/搜索