等待iframe打开并加载Selenium

时间:2009-12-18 15:14:35

标签: ruby selenium automated-tests selenium-rc

我有一个应用,用户点击按钮,触发iFrame打开。我在等待这个帧在继续之前打开一个负载时遇到了麻烦。

我无法使用:

wait_for_page_to_load

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

我无法使用:

select_frame

因为框架尚未加载

所以我留下了那么丑陋的

sleep(3)

之前我可以选择框架并断言它。

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

干杯,

广告。

编辑:我似乎无法使用:

wait_for_frame_to_load

要么超时。

1 个答案:

答案 0 :(得分:3)

不确定这是否可行,因为iframe在单独的沙箱中运行到普通帧,因为您可以进行跨站点页面调用,并且他们可能拥有自己的JavaScript,但您无法与之交互。

@selenium.wait_for_frame_to_load "iframe", "30000"

如果你在* chrome或* iehta中运行你的测试可能,但目前没有任何东西可以用

进行测试