【发布时间】:2020-08-18 13:31:05
【问题描述】:
我们的复选框 html 代码总是看起来像这样
<div id="paymentCheckBoxesMod" class="c-form__checkbox-container u-spacing__margin-bottom--16 u-spacing__margin-top--16">
<input type="checkbox" id="supplementaryAgreement" aria-describedby="paymentsCheckboxLabel">
<label for="supplementaryAgreement">
</label>
<div id="paymentsCheckboxLabel">
Jag godkänner Storytels <span id="purchasetermspopup">Köpvillkor</span> & <span id="privacypolicypopup">Integritetspolicy</span>
</div>
</div>
我总是使用标签的for="supplementaryAgreement" 定位元素,因为如果我使用输入的id="supplementaryAgreement",我最终必须等待超时时间才能找到元素。有谁知道为什么?
所以在我必须为 iframe 工作之前一直运行良好,虽然我已经切换回大型机,但是如果我现在使用 for="supplementaryAgreement",我会收到 DOM 树上没有匹配项的错误。它仍然适用于id="supplementaryAgreement",但必须等待它超时似乎效率不高。
【问题讨论】:
-
这种行为听起来很奇怪。您是否有公共 URL 来访问它并诊断问题?或者,您可以提供一个小型示例应用程序,我们可以在其中重现问题并检查发生了什么。
-
是的,您可以转到创建帐户页面
https://www.storytel.com/se/sv/skapa-konto,创建帐户后,您将进入付款页面,我在该页面上遇到了复选框问题,虽然我不确定它是否有效正确的做法this.suppAgreementCheckbox = Selector('#checkboxid').with({ timeout: 1 })
标签: testing iframe checkbox selector testcafe