为什么使用isPresent时,Protractor中的链接选择器返回false

时间:2016-03-10 16:19:13

标签: jasmine protractor angular ionic2

所以我正在为Ionic 2 / Angular 2编写自动化测试,我有一个看起来像这样的DOM元素

<ion-segment-button class="segment-button segment-activated" role="button" tappable="" value="orders" aria-pressed="true">

我创建了一个如下所示的页面对象:

ordersButton: element(by.css('[value="orders"]')),

在我的spec文件中,我的测试步骤看起来像是

expect((orders.header.ordersButton).element(by.css('.segment-activated')).isPresent()).toBeTruthy();

这会返回false,我无法弄清楚原因。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您可能需要等待presence of the element

var EC = protractor.ExpectedConditions;

var button = orders.header.ordersButton;
var segmentActivated = button.element(by.css('.segment-activated'));
browser.wait(EC.presenceOf(segmentActivated), 5000);

expect(segmentActivated.isPresent()).toBe(true);