【问题标题】:How do i check if element exists by id with Jasmine?我如何通过 Jasmine 的 id 检查元素是否存在?
【发布时间】:2014-09-11 22:47:43
【问题描述】:

我如何使用 jasmine 通过 id 简单地检查页面上是否存在元素?

我翻过matcherstoExist() 好像没有解决这个问题。

这是我尝试过的:

1. expect(by.id('my-id')).not.toExist();

2. expect($(document)).not.toContain($(#my-id));

你能帮忙吗?

【问题讨论】:

    标签: javascript unit-testing jasmine protractor


    【解决方案1】:

    使用 Protractor v1.x(没有 angularjs-jasmine-matchers):

    expect(element(by.id('my-id')).isPresent()).toBe(true);
    

    【讨论】:

    • 量角器对于简单的单元测试来说是很多开销。 @runTarm 的 answer 避免了多余的东西。
    • 出现错误:“错误 TS2345:'true' 类型的参数不可分配给 'Expected>' 类型的参数。”
    • 是的,对于在 TypeScript 中使用量角器的任何人来说,这都是一个大问题。
    【解决方案2】:

    要使用angularjs-jasmine-matchers,您可以这样编写测试:

    expect('#my-id').not.toExist();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-08-13
      • 1970-01-01
      • 2016-05-27
      • 2015-04-25
      • 2020-09-20
      • 2011-07-14
      • 1970-01-01
      相关资源
      最近更新 更多