量角器无法在叠加中找到元素

时间:2019-01-10 11:16:53

标签: javascript typescript jasmine protractor

我正在尝试使用量角器打字稿获取错误消息的文本。该消息仅出现几秒钟。

下面是元素的完整HTML:

$(".button-b, .item, .item2, .button-a, .port_item").on("click", function() {
  var modal = $(this).data("modal");
  if (modal) {
    $(modal).show();
    $("html, body").addClass("modal-open");
  }
});

$(".modal").on("click", function(e) {
  var className = e.target.className;
  if(className === "modal" || className === "closex"){
    $(this).closest(".modal").hide();
    $("html, body").removeClass("modal-open");
  }
});

我尝试了以下代码

<mas-popup-message _ngcontent-c24="" _nghost-c6="" class="ng-star-inserted">
<div _ngcontent-c6="" class="report-panel__container">
  <i _ngcontent-c6="" class="material-icons close">close</i>

  <div _ngcontent-c6="" class="report-panel__container-columns ng-star-inserted">
  <div _ngcontent-c6="" class="report-panel__container-columns-content-error">User Creation Failed</div>
  </div>
    <!---->
    <!---->

</div>
</mas-popup-message>

我使用过isDisplayed(),isPresent(),EC.presenceOf,但在每种情况下都返回相同的错误。

NoSuchElementError:使用定位器找不到元素:

我使用的

定位器是正确的。我认为该元素位于叠加层中,但不是iframe。任何人都可以帮忙什么可能的解决方案?

1 个答案:

答案 0 :(得分:1)

尝试使用:   browser.wait(EC.visibilityOf(element(by.css("mas-popup-message"))),5000,"error returned");