Drop Down Combo Box中不存在断言给定文本

时间:2015-07-13 07:09:48

标签: selenium-webdriver

我必须自动化我获得名字和电子邮件地址的情况,我已经存储了然后我需要通过下拉框来声明该值不存在。

以下是我的网页

的HTML代码
<select id="Customer" name="Customer" class="valid">
<option value="raj777@gmail.com">123123123  (raj777@gmail.com)</option>
</select>

它包含多个条目,

我需要验证我的给定文本中是否存在。

我尝试了这个,但它不起作用

assertNotEquals(fname+" "+em, driver.findElement(By.xpath("//*[@id='Customer']")).getText());

提前致谢!!!

1 个答案:

答案 0 :(得分:0)

按照以下流程:

  1. 获取下拉列表中每个元素的文本('选项'元素)
  2. 将值格式化为字符串列表或数组。
  3. 查看列表或数组中包含您的姓名&amp;邮件ID值。
  4. 或者如果你只想断言,那么在数组或列表的for--loop中: 添加t

    1. 他在try-catch块声明了声明。
    2. 在catch块中,每次执行此块时,都会增加一个整数。
    3. 在fr-each循环之后,检查整数值是否等于yor list或数组大小。
    4. 第一个场景的代码示例:

          driver.findElement(By.cssSelector(".trb_outfit_sponsorship_logo_img"))
              .click();
          System.out.println(dri.findElement(
              By.cssSelector(".trb_outfit_sponsorship_logo_img")).getSize());
          List<WebElement> dropDownValues = dri.findElements(By
              .xpath("//select[@id='Customer']"));
          ArrayList<String> dropDownValuesasText = null;
          for (WebElement eachValue : dropDownValues) {
              dropDownValuesasText.add(eachValue.getText());
          }
      //  boolean result = dropDownValuesasText.contains("Your FirstName & Email value");
          //It will pass if your value is present in drop down
          assertNotEquals(dropDownValuesasText.contains("Your FirstName & Email value"), true);