grails 嵌入式服务器功能测试需要有有效的 ssl 证书

标签 grails ssl functional-testing embedded-server

我一直在网上搜索如何使用嵌入式服务器 + ssl 解决我的 grails 功能测试问题,非常感谢对我遇到的问题的任何帮助。

到目前为止,我们使用 Selenium WebDriver 2 在 Firefox 上测试我们的 Grails webapp 取得了很好的成功。我们使用功能测试插件从我们的 Jenkins 服务器(有时是我们的本地机器)自动运行功能测试来启动和停止我们的应用程序,和 webdriver 插件一起使用。

这一行: profile.acceptUntrustedCertificates = true 用于新 Firefox 实例的配置文件对我们有效地使所有 SSL 在我们使用 Firefox 的测试期间就浏览器而言完全有效。

因此,虽然该设置在 Firefox 上运行良好,但我们仍然需要为 IE 8 运行一组并行测试,但我只是想不出一种方法让 webdriver 处理 IE 8 的 SSL 警告/障碍。

因为我们这里纯粹是 Mac(开发)/Linux(jenkins 等),所以我们在 Win 7 VirtualBox VM 中运行 IE 8。然后我们从 Win 7 VM 实例运行独立的 WebDriver 服务器。在测试到达我们的 web 应用程序的 SSL 部分之前,它工作正常,此时我收到 IE SSL 警告页面,并且测试出轨。

出于这个原因,我们买了一个便宜的 godaddy SSL 证书来使用,希望让 IE 满意,但我一直没能找到一种方法让我们的证书显示为有效和 CA 签名的证书,而不仅仅是 self -签。例如,当我在 Chrome 中检查证书时,它确实显示了我的证书,而且它是自签名的。它的 CN 与 testbox.example.com 一致,我已将以下行添加到/etc/hosts:127.0.0.1 testbox.example.com。

我使用 java keytool 生成了 CSR,然后按照 godaddy 网站上的说明导入了生成的签名证书、中间证书、交叉证书等。我在某个地方看到 grails 需要它的 keystore 来保留密码 123456,我已经这样做了。

我已经为常规服务器成功完成了 SSL 配置,例如独立的 glassfish 和 tomcat,但我在这个问题上真的碰壁了。

谢谢! 杰米

最佳答案

另一种方法:

您提到 IE 设置中的更改不起作用,因为 WebDriver 创建了一个新的 IE 实例。

IE 在 Windows 注册表中存储了很多设置。因此,“IE 注册表证书”可能是用谷歌搜索您的问题的良好开端。这是一个有希望的结果:

http://www.ehow.com/how_5024374_fix-certificate-error-internet-explorer.html

由于您在虚拟机中运行 IE,我想在此虚拟机上禁用 IE 安全功能是可以的。否则我不得不承认,默认情况下禁用此类安全功能并不是一个好主意。

关于grails 嵌入式服务器功能测试需要有有效的 ssl 证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6257263/

相关文章:

django - Django、Nginx 和 Gunicorn 上的 SSL

macos - OS X 10.11.6 El Capitan SSLRead() 返回错误 -9841

python - 在 Python 解释器中调试代码

authentication - Grails 3和Spring Security-在过滤器中对用户进行身份验证

java - Grails - Jasper 插件依赖下载错误

Grails 命名为层次结构中的查询

ruby-on-rails - Heroku 和 Restful API 隐私和安全问题

javascript - 实习生 : Checking for Elements that Shouldn't Exist

php kohana 功能测试数据库环境

grails - Grails Project在运行时缺少Java库