2017-07-27 50 views
1

例如,如果用户有一个礼品卡,我们要断言,礼品卡部分至上:在麦哲伦/ Nightwatch中,我们如何断言元素出现在另一个元素之前?

<section id="gift-card-section"> ... </section> 
<section id="credit-card-section"> ... </section> 

否则,我们要断言信用卡节是第一位的。这怎么能在麦哲伦/守夜?

我的想法是只是为了获得在N-th childN ...并断言N1 < N2或周围的其他方法。这在麦哲伦/ Nightwatch中是如何完成的?

回答

1

这是使用XPATH的好例子。 显式的,如果你知道这些应该是第一和第二节元素。

browser 
.useXpath().assert.attributeContains('(//section)[1]', 'id', 'gift-card-section'); 
.useXpath().assert.attributeContains('(//section)[2]', 'id', 'credit-card-section'); 

,或者,如果他们不需要排序,他们是在DOM同一水平(如果他们是兄弟),你可以使用属性等于:

browser 
.useXpath().assert.attributeEquals("//section[@id='credit-card-section']/following-sibling:://section[@id='gift-card-section']", "id", "credit-card-section"); 

这第二个选项是一个有点多余,但是如果你在Nightwatch中使用XPATH,还有很多其他的选择。

相关问题