当 iframe 只有 src 时,如何创建 testcafe 选择器元素?

问题描述 投票:0回答:2

我有以下 iframe 部分,我想将其用于进一步的操作

    <div class="addonWrapper"><div class="detailhead mobileonly">   
    <div class="cancelbtn cancelmobileiframebtn" title="Zurück" onclick="closeMobileIFrame()"></div></div>
    <iframe src="https://abcd.php?stage=1&amp;access_token=zrhrhha8b-621bb319cd38d-1348650f57bf2b8d70fbc84d95b747ab" style="width: 100%; height: 100%; border: none;"></iframe>
    </div>

我试过做这样的事情。

this.iframeM = Selector('iframe').withAttribute(
            'src',
            'https://abcd.php?stage=1&amp;access_token=zrhrhha8b-621bb319cd38d-1348650f57bf2b8d70fbc84d95b747ab'
        );

然后在测试中

await t.switchToIframe(mPage.iframeM);

但是没有成功。我不断收到错误消息“指定的选择器与 DOM 树中的任何元素都不匹配!”

在只有 src 可用的情况下,识别 iframe 的最佳方法是什么。将不胜感激。

javascript node.js testing automated-tests testcafe
2个回答
1
投票

你能试试看吗?

  1. 使用正则表达式而不是属性的确切值

https:\/\/abcd.php\?stage=1.*


this.iframeM = Selector('iframe').withAttribute(
            'src',/https:\/\/abcd.php\?stage=1.*/
        );

参考:带有 .withAttribute 方法的选择器

  1. 增加iFrame的超时值 参考:增加iFrame的超时值

  2. 在调试模式下运行测试 在调试模式下运行测试并在加载框架时执行 iFrame 特定代码。


0
投票

在 v2.4.0 中,您可以使用Visual Selector Debugger。此功能包括一个选择器生成器。不幸的是,您还不能在 iframe 中生成选择器,但您可以为 iframe 本身执行此操作。

© www.soinside.com 2019 - 2024. All rights reserved.