ionic 4 量角器 e2e - 如何在离子警报按钮之间 select/distinguish

ionic 4 protractor e2e - how to select/distinguish between ionic alerts buttons

我希望能够简单可靠地select这两个用量角器进行端到端测试的警报按钮。

我无法使用 by.partialButtonText,因为文本位于 span 元素内。

<button type="button" class="alert-button ion-focusable ion-activatable sc-ion-alert-md" tabindex="0">
     <span class="alert-button-inner sc-ion-alert-md">Yes</span>
     <ion-ripple-effect class="sc-ion-alert-md md hydrated" role="presentation"></ion-ripple-effect>
</button>
<button type="button" class="alert-button ion-focusable ion-activatable sc-ion-alert-md" tabindex="0">
     <span class="alert-button-inner sc-ion-alert-md">No</span>
     <ion-ripple-effect class="sc-ion-alert-md md hydrated" role="presentation"></ion-ripple-effect>
</button>


它们在 DOM 中是否始终按特定顺序显示? 如果是这种情况,您可以尝试以下操作:

const yesButton = element.all(by.css('.alert-button-inner.sc-ion-alert-md')).get(0);

const noButton = element.all(by.css('.alert-button-inner.sc-ion-alert-md')).get(1);

那些将获得 <span> 元素。

此外,您可以尝试使用以下方法更精确地定位它们:

const yesButton = element(by.cssContainingText('.alert-button-inner.sc-ion-alert-md', 'Yes'));  

const noButton = element(by.cssContainingText('.alert-button-inner.sc-ion-alert-md', 'No'));