我如何通过id与Jasmine检查元素是否存在?

Lia*_*nat 17 javascript unit-testing jasmine protractor

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

我走过了匹配者,toExist()似乎没有解决这个问题.

这是我试过的:

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

2. expect($(document)).not.toContain($(#my-id));
Run Code Online (Sandbox Code Playgroud)

你能帮我吗?

shl*_*sky 21

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

expect(element(by.id('my-id')).isPresent()).toBe(true);
Run Code Online (Sandbox Code Playgroud)

  • 量角器对于简单的单元测试来说是很多开销。@runTarm 的 [answer](/sf/answers/1740574671/) 避免了多余的部分。 (3认同)

run*_*arm 9

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

expect('#my-id').not.toExist();
Run Code Online (Sandbox Code Playgroud)