2017-03-21 23 views
5

我有一个硒测试,其中我需要点击一个“cliclient://”链接,并且该链接需要打开一个应用程序。现在,我需要为每个测试新的配置文件,我不知道如何绕过点击链接时出现的“启动应用程序”对话框:如何使用Selenium在Firefox中点击“启动应用程序”对话框?

enter image description here

这里的一个片段测试我已经创建了:

profile = Selenium::WebDriver::Firefox::Profile.new 

    profile.secure_ssl = false 
    profile.assume_untrusted_certificate_issuer=true 

    profile["plugin.default.state"] = 2 
    profile["plugin.state.java"] = 2 

    profile["browser.download.folderList"] = 2 
    profile["browser.download.manager.alertOnEXEOpen"] = false 
    profile["browser.download.manager.closeWhenDone"] = true 
    profile["browser.download.manager.focusWhenStarting"] = false 
    profile["browser.download.manager.showWhenStarting"] = false 
    profile["browser.helperApps.alwaysAsk.force"] = false 
    profile["browser.helperApps.neverAsk.saveToDisk"] = 'application/x-msdownload,application/octet-stream, application/x-msdownload, application/exe, application/x-exe, application/dos-exe, vms/exe, application/x-winexe, application/msdos-windows, application/x-msdos-program' 

    profile["gfx.direct2d.disabled"] = true 
    profile["layers.acceleration.disabled"] = true 

这是什么在我需要设置,绕过对话框,或显示此对话框时,确定以某种方式点击个人资料?

+0

哎,能不能帮上机我有点清楚,你想在这里实现什么,你想在配置文件中禁用警报还是需要处理此警报? –

+0

任何一个适合我。如果这可以通过一些配置文件设置被禁用,那会很好。如果没有,那么我需要一种方法来处理警报。 –

回答

1

你也可以尝试使用SikuliX http://sikulix.com/这是一个自动化软件,它使用图像来识别需要执行某些操作的GUI元素。

Hovever与红宝石使用它,你将最有可能需要编译并通过系统命令运行一个Java类,你也将需要JDK安装在自动化将进行

0

Use C# to access the Win32 API并找到标题为“Launch Application”的窗口句柄,您需要使用它,因为窗口是由操作系统控制的,因此Selenium无法与之交互。 API点击取消按钮(找到使用WinSpy其识别性能)

很抱歉,如果这不是一个完整的答案,但我不能只是评论,因为我目前所面对的代表不足。

相关问题