2011-07-17 54 views
1

嗨我目前正在为使用Seleneium IDE的电子商务网站编写一个测试脚本,它位于HTTP测试环境中。我遇到的问题是测试支付网关3D Secure采用HTTPS,所以当使用FireFox时,当我从支付网关3D Secure HTTPS返回到站点测试环境时,浏览器显示安全警告消息。Selenium IDE可以有效处理浏览器警报

'虽然此页面已加密,但您输入的信息将通过未加密的连接发送,并且可以被第三方轻松读取。

您确定要继续发送此信息吗?'

我已经在IDE中尝试了waitForAlert *和asertAlert *的各种命令,但是这个javascript警报似乎只是骑过我使用的任何命令,并且基本上会暂停脚本,直到使用手动干预。

我无法从我可以从各种论坛assertain,因为它太重要了,不能切换关闭此特定警报关在FF,我在FF试图about:config中

我可以obviusly切换3D安全关闭以允许脚本运行,但我希望完整的用户场景进行测试,而不是适合自动化的测试。

非常感谢您的时间和协助。

回答

0

选项#1:

最简单的方法是去除安全选项选项为您的个人资料: http://forums.mozillazine.org/viewtopic.php?f=38&t=665552

选项#2:

不知道这是否适用到不受信任的证书或您的安全警告,但论坛主题似乎适合。它要求您使用Selenium RC Server。

配置文件都存储在这里的Firefox:%APPDATA%\ Mozilla的\ Firefox的

配置文件可以被编辑:http://www.dennisplucinik.com/blog/2011/02/04/how-to-install-run-multiple-firefox-versions-in-windows-simultaneously/

从这个链接请按照下面的代码片段: http://old.nabble.com/Security-Warning-on-final-page,-how-to-remove-td22907376.html

如果使用Firefox 3,请看下面的帖子https://developer.mozilla.org/En/Cert_override.txt

我用来解决这个安全问题的解决方案弹出窗口只适用于Firefox 3浏览器,并且可能比修复更像是黑客攻击,但它起作用。

  1. 时弹出提示运行硒测试
  2. 选择“永久接受此证书”
  3. 单击OK按钮(这可能是neccessary在此之后有一个停顿,因为我们需要打开资源管理器发现现在的文件)
  4. 打开Windows资源管理器,然后导航到=> “C:\用户\ XXXXXXXX \应用程序数据\本地的\ Temp \ customProfileDirxxxx”
  5. 这是Firefox浏览器创建一个temparary配置文件包含一个名为“cert_override .txt“
  6. 将“cert_override.txt”复制到临时目录
  7. 停止您的硒服务器。
  8. 从打开 “硒的server.jar” 文件 “C:\硒遥控操作XXX \硒服务器-XXX” 用WinRAR
  9. 将 “cert_override.txt” 文件放到“硒服务器的.jar \ customProfileDirCUSTFFCHROME”在WinRAR文件夹中(不要删除或编辑.jar文件什么!!!!!)
  10. 关闭WinRAR的,启动硒再次尝试:)
4

我有完全相同的同样的问题:

我使用Selenium网络驱动程序来测试我的本地http服务器,它将重定向发送到https服务(3DS以及btw;)。问题不在于证书,而是在https/http之间切换的硬编码警告。

根据MacGyver的回答和这个回答Key press in (Ctrl+A) Selenium WebDriver的链接,我测试了这一点,我可以确认它关闭“虽然这个页面是加密的,但您输入的信息将通过未加密的连接发送,并且可以轻松读取由第三方”对话框:

Alert alert = driver.switchTo().alert(); 
alert.accept(); 

其他的解决方案,似乎工作正常,但你会用最新版本的硒(例如2.25.0)得到UnhandledAlertException:

Actions a = new Actions(driver); 
a.sendKeys(Keys.ENTER).perform(); 
相关问题