如何在Selenium IDE中的JS弹出窗口(身份验证)上单击“确定”或“取消”

时间:2017-04-18 17:58:21

标签: javascript authentication login selenium-ide

我一遍又一遍地看着这一点似乎其他相关的线程真的没有解决任何问题?!

首先,请不要说在Selenium WD中如何做到这一点 - 我们理解这种方法,它不适用于我们的UAT测试。该工具是Selenium IDE,我们只需单击“确定”或“取消”

即可

预条件: Firefox设置为记住用户名/密码,当确认框呈现给用户时,您可以看到:

  • 窗口标题:需要验证
  • 窗口内容:{{Site}}正在请求您的用户名和密码
  • 用户名/密码:使用正确的凭据填写

我们只是想点击“确定”按钮。您无法检查元素,因为它是JS,我们只想知道在此对话框中单击“确定”或“取消”按钮的最简单方法是什么。

我尝试了StoreAlert,StoreConfirmation,ChooseOKOnNextConfirmation和ChooseCancelOnNextConfirmation,但似乎都没有。

如果您回复,请具体说明“命令”,“目标”和“价值”字段。

1 个答案:

答案 0 :(得分:0)

我现在使用AutoIt以两种不同的方式成功完成了这项工作。我只能使用selenium ide来消费和处理弹出窗口。 SeleniumHQ.org提供了有关如何处理提示,警报和对话框的示例,但需要"需要验证"弹出窗口不在范围内。

方法#1:自动发送用户名,密码并点击“确定”。按钮

  • 执行发送用户名,密码并点击“确定”的AutoIt脚本。按钮(此脚本应循环等待下一步的弹出窗口)
  • 执行Selenium IDE脚本,该脚本会触发您正在测试的网站,以显示"需要的身份验证"弹出。这可能只是在点击网站。
  • 将Selenium IDE脚本置于睡眠状态(睡眠命令)
  • AutoIt脚本接管(查看提示)并发送用户名,密码并点击' ok'按钮。 AutoIt脚本终止
  • Selenium IDE脚本从睡眠状态开始并继续测试测试用例

方法#2

  • 执行点击“确定”的AutoIt脚本。按钮(此脚本应循环等待下一步的弹出窗口)
  • 执行Selenium IDE脚本,该脚本访问网站但有用户:传入网站的网址。
  • 将Selenium IDE脚本置于睡眠状态(睡眠命令)
  • AutoIt脚本接管(查看提示)并发送并点击“确定”#39;按钮。 AutoIt脚本终止
  • Selenium IDE脚本从睡眠状态开始并继续测试测试用例

摘要:方法#1使用AutoIt脚本输入用户,传递并点击“确定”。按钮。方法#2使用AutoIt脚本只需点击“确定”即可。按钮,因为当您使用用户访问网站时:传入URL,会显示一个不同的确认弹出窗口,其中只有' ok'或者'取消'。