3

我们使用 rspec 测试我们的 Rails Web 应用程序,并在我们的 rspec 测试中使用 selenium-client(gem 版本 1.2.18)API 让 selenium RC 服务器(版本 2.21.0)引导 AP 下的 Internet Explorer 7 来测试我们的应用程序。

在我们为我们的登录和注册过程引入 HTTPS 之前,这一直非常有效。现在用户被重定向到登录和注册表单的安全版本,然后被重定向回不安全的 HTTP 站点。

为了让我们的 selenium 测试与 HTTPS 和 Internet Explorer 7 一起使用,我们使用“*iexploreproxy”而不是“*iexplore”设置 selenium 驱动程序,并使用端口 4444。我们还安装了 Cyber​​Villans SSL 证书,如下所述http://blog .mogotest.com/2010/04/13/how-to-accept-self-signed-ssl-certificates-in-selenium/。我们使用 -trustALLSSLCertificates 运行 selenium rc 服务器。这解决了自签名 SSL 证书问题(请注意 selenium RC > 2.21 不起作用,因为错误设置了错误的有效起始日期)。

之后,我们在运行测试时收到“Permission Denied”错误。我们发现这是由于http://wiki.openqa.org/display/SEL/Selenium+Core+FAQ中描述的相同起源问题,在“为什么通过 HTTPS 访问我的网站时出现权限被拒绝错误? ”。这个问题可以通过调整 Internet Explorer 7 代理设置并使用 localhost:4444 通过 selenium RC 服务器路由所有内容来解决。它可以工作,但问题是每次测试运行后代理设置都会重置。

我的第一个问题是:如何使这些设置在 Internet Explorer 7 中持久存在?我阅读了有关 IE 的自定义配置文件,但我还没有找到如何为 rspec 测试设置它。我还阅读了有关 proxy.pac 文件的信息,但在谷歌上搜索解决方案没有成功。

下一个问题是,在运行我们的测试时,我们还会遇到 selenium 的“拒绝访问”错误。我不知道如何解决这些问题以及它们发生的原因。所以我的第二个问题是:如何在所描述的设置下摆脱那些。

4

0 回答 0