如何从量角器访问 angular md-tab 元素?
How to access angular md-tab elements from protractor?
Html:
<md-tab-group class="my-tab-group">
<md-tab class="my-tab"></md-tab>
<md-tab class="my-tab"></md-tab>
</md-tab-group>
e2e 测试:
elems = element(by.css('.my-tab-group')).all(by.css('.my-tab'))
expect(elems).toBeTruthy();
expect(elems.count()).toEqual(2);
此测试失败:Expected 0 to equal 2
。
为什么量角器无法识别制表符的数量。这是由于 angular 元素 md-tab-group
而发生的。如果我评论 md-tab-group
,我就可以访问选项卡。如何在 md-tab-group
出现时访问选项卡元素?
P.S。我正在使用 Angular 4.0
然后尝试使用它来检索 mength
elems = element(by.css('.my-tab-group')).all(by.css('.my-tab'));
elems.then(function (result) {
expect(result.length).toEqual(2);
});
或者
elems.count().then(function (size) {
expect(size).toEqual(2);
});
Angular 为 md-tab 创建新元素(angular 指令)。此类选项卡可以通过 id 引用,例如第一个选项卡的 "md-tab-label-0-0",第二个选项卡的 "md-tab-label-0-1",如下图所示。
第一个选项卡元素可以通过
访问
element(by.id('md-tab-label-0-0'));
而且,问题的答案是
elems = element.all(by.css('.mat-tab-labels'))
expect(elems).toBeTruthy();
expect(elems.count()).toEqual(2);
Html:
<md-tab-group class="my-tab-group">
<md-tab class="my-tab"></md-tab>
<md-tab class="my-tab"></md-tab>
</md-tab-group>
e2e 测试:
elems = element(by.css('.my-tab-group')).all(by.css('.my-tab'))
expect(elems).toBeTruthy();
expect(elems.count()).toEqual(2);
此测试失败:Expected 0 to equal 2
。
为什么量角器无法识别制表符的数量。这是由于 angular 元素 md-tab-group
而发生的。如果我评论 md-tab-group
,我就可以访问选项卡。如何在 md-tab-group
出现时访问选项卡元素?
P.S。我正在使用 Angular 4.0
然后尝试使用它来检索 mength
elems = element(by.css('.my-tab-group')).all(by.css('.my-tab'));
elems.then(function (result) {
expect(result.length).toEqual(2);
});
或者
elems.count().then(function (size) {
expect(size).toEqual(2);
});
Angular 为 md-tab 创建新元素(angular 指令)。此类选项卡可以通过 id 引用,例如第一个选项卡的 "md-tab-label-0-0",第二个选项卡的 "md-tab-label-0-1",如下图所示。
第一个选项卡元素可以通过
访问element(by.id('md-tab-label-0-0'));
而且,问题的答案是
elems = element.all(by.css('.mat-tab-labels'))
expect(elems).toBeTruthy();
expect(elems.count()).toEqual(2);