4

我有一个应用程序,用户在其中单击一个按钮,触发 iFrame 打开。在继续之前,我在等待此框架打开负载时遇到了真正的麻烦。

我不能使用:

wait_for_page_to_load

因为它不是加载的页面,而是 iframe。

我不能使用:

select_frame

因为框架还没有加载

所以我只剩下如此丑陋的东西

sleep(3)

在我可以选择框架并对其进行断言之前。

关于如何正确执行此操作的任何建议?我不想使用特定于 lib 的 JS,因为我正在提取 Selenium DSL 以在多个项目中使用。另外,我正在使用 selenium-client 所以任何基于 ruby​​ 的东西都会是一个加号。

干杯,

广告。

编辑:我似乎无法使用:

wait_for_frame_to_load

要么,它超时。

4

1 回答 1

3

不确定这是否可行,因为 iframe 在与普通框架不同的沙箱中运行,因为您可以进行跨站点页面调用,并且它们可能有自己的 JavaScript,您将无法与之交互。

@selenium.wait_for_frame_to_load "iframe", "30000"

如果您在 *chrome 或 *iehta 中运行测试,它可能会起作用,但目前没有任何东西可以测试

于 2009-12-18T15:52:03.757 回答