【问题标题】:Testing the iframe content测试 iframe 内容
【发布时间】:2014-12-31 14:41:23
【问题描述】:

我正在运行 ruby​​ on rails 项目,我想知道有没有办法测试 iframe 内容。

这是我第一次测试这样的东西,所以我不知道如何开始或使用哪些工具。

我将其他网站部分嵌入我网站的某些部分,因此我想确保 iframe 返回 200 或其他成功指示符,否则我会显示某种错误。

我使用 Jasmine、rspec、selenium 等。有什么可以做到这一点吗?

【问题讨论】:

  • 刚刚启动您的 Rails 服务器?确保 iframe 所在的服务器(如果不是同一台服务器)也在运行,然后打开浏览器。您还可以使用 charles 等 Web 调试代理来查看响应标头和其他有用信息
  • @user2879041 但这不会在我打电话时给我信息。在那一刻,其他网站可能会崩溃,我的用户将没有任何内容或内容损坏
  • 所以 iframe 完全是另一个网站,而不是您自己的内容,对吧?
  • 如果是另一个域,在客户端真的无能为力。
  • ^ 确实,差不多。如果它是您自己的网站,但在另一个域上,您可以尝试利用 html5 消息传递 api,如果您得到响应,那么您就知道没关系(200)。如果没有响应,您可以删除 iframe 并将其替换为表示不可用的图像或 div。

标签: javascript ruby-on-rails ruby iframe rspec


【解决方案1】:

在您的 iframe 网站上,您可以执行类似的操作

window.onload = function(){
   parent.postMessage(message, url); 
}  

在托管 iframe 的网站上,您在 iframe 上有一个事件侦听器,用于接收消息。查看此链接http://javascript.info/tutorial/cross-window-messaging-with-postmessage

【讨论】:

  • 我不想在我包含的网站上放代码。没有必要这样做
  • 那你就不走运了。跨域策略不允许你想要的功能
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-03-29
  • 2017-05-17
  • 2010-09-27
  • 2016-10-20
  • 2011-05-31
  • 1970-01-01
  • 2016-02-05
相关资源
最近更新 更多