如果我有这样的
HTML:
<body> <div id="menu"> <div id="button"> {{ someBinding }} </div> </div> </body>
我在量角器中有这样的声明:
ptor.findElement(By.xpath("/body/div[@id='menu']/div[@id='button']"));
我将使用什么来获取{{someBinding}}的值?似乎量角器试图将值与绑定名称进行比较.因此,如果我希望{{someBinding}}说“Hello World”,则会抛出错误说明
Expected: {{someBinding}} to equal 'Hello World'
解决方法
我认为你需要在元素上调用.getText().
el = ptor.findElement(By.xpath(“/ body / div [@ id =’menu’] / div [@ id =’button’]”))
所以你的整个陈述是:
expect(el.getText()).toBe(‘Hello World’);
我还会考虑使用不同的定位器,例如CSS定位器(如果使用id),或者查看绑定定位器.
https://github.com/angular/protractor/blob/master/docs/api.md#webdriverwebelementprototypegettext
https://github.com/angular/protractor/blob/master/docs/api.md#protractorbyprototypebinding