Testing 在iframe内被Testcafe单击时链接不工作
我正试图在我们的demoshop中设置一些简单的验证。 它一直工作到点击“genomför köp”(购买)链接为止。 链接标记为已单击(颜色更改),但未执行正确的操作,因此您将停留在同一侧。 如果在“wait t t.click(“#purchase button”);行之后添加调试行,则可以手动单击该链接,将鼠标悬停在该链接上,以便testcafe找到该链接。但由于某些原因,单击()不起作用 编辑:1:我使用的操作系统是WIn10,在phpstorm 2019.3.3下运行testcafe 1.8.2,并用“testcafe chrome*.js”调用它 任何帮助都将不胜感激。 /克里斯托弗 相关代码如下,demoshop已开放使用Testing 在iframe内被Testcafe单击时链接不工作,testing,automation,automated-tests,e2e-testing,testcafe,Testing,Automation,Automated Tests,E2e Testing,Testcafe,我正试图在我们的demoshop中设置一些简单的验证。 它一直工作到点击“genomför köp”(购买)链接为止。 链接标记为已单击(颜色更改),但未执行正确的操作,因此您将停留在同一侧。 如果在“wait t t.click(“#purchase button”);行之后添加调试行,则可以手动单击该链接,将鼠标悬停在该链接上,以便testcafe找到该链接。但由于某些原因,单击()不起作用 编辑:1:我使用的操作系统是WIn10,在phpstorm 2019.3.3下运行testcafe
fixture`demoshop.resurs.com`
.page(https://demoshop.resurs.com);
test(
'Run: demoshop.resurs.com', async t => {
await t
.click('.home-shop-now')
.click('#root > div > main > div > div.container > div.products-container.mb-60 > div:nth-child(1) > a > img')
.click('#root > div > main > div > div > div.product-detail__container > div.product-detail__info-container > div.product-detail__add-to-cart > div > button')
.click('#root > div > main > div > span > header > div > div > div > span.shopping-bag-icon.clickable > div')
.click('#root > div > main > div > span > div > div > div > div.shopping-cart-container > a');
await t.switchToIframe('iframe');
await t.click('#purchase-button'); //This does not work properly
await t.expect(Selector('h2').innerText).contains('Tack för din order!');
}
);
我能够用计算机重现这个问题TestCafe@1.8.2但是,测试与预期的效果一样TestCafe@1.8.4. 我建议您更新到最新的TestCafe版本,并应用@DmitryOstashev提供的更改:
import { Selector } from 'testcafe';
fixture`demoshop.resurs.com`
.page('https://demoshop.resurs.com');
test(
'Run: demoshop.resurs.com', async t => {
await t
.click('.home-shop-now')
.click('#root > div > main > div > div.container > div.products-container.mb-60 > div:nth-child(1) > a > img')
.click('#root > div > main > div > div > div.product-detail__container > div.product-detail__info-container > div.product-detail__add-to-cart > div > button')
.click('#root > div > main > div > span > header > div > div > div > span.shopping-bag-icon.clickable > div')
.click('#root > div > main > div > span > div > div > div > div.shopping-cart-container > a');
await t.switchToIframe('iframe');
await t.click('#purchase-button');
await t.switchToMainWindow();
await t.expect(Selector('h2').innerText).contains('Tack för din order!');
}
);
您能澄清一下您使用的操作系统、浏览器和TestCafe版本吗?我已经用TestCafe v1.8.4检查了您的测试,发现没有切换到主窗口。我添加了
wait t t.switchToMainWindow()代码>点击#购买按钮后的操作
我方通过了测试。我已经用你要求的信息更新了原始帖子。试着找你的零钱。不幸的是,它没有起作用。对不起,我的回答迟到了。得了急性阑尾炎后在医院住了一周。(不是我计划的一部分:))tnx。现在工作。需要弄清楚为什么1.8.2无法处理该页面。