gpt4 book ai didi

selenium - 使用 Protractor 和Webdriver在自动测试中启用剪贴板

转载 作者:行者123 更新时间:2023-12-04 21:03:08 31 4
gpt4 key购买 nike

我想用Protractor测试一个使用clipboard api访问系统剪贴板的Angular应用程序。问题在于,执行测试时,Chromium浏览器会要求用户授予访问剪贴板的权限。我无法从测试中关闭此框,因为它既不是DOM元素也不是警报窗口,而且似乎也不是从 Protractor 访问它的任何方式。

clipboard permissions

我试图在 Protractor 设置中自动授予Chrome的权限。首先,我寻找了一个可以做到这一点的command line switch,但它似乎不存在。

然后,我发现了一种显然可行的方法,但是我不知道它是否稳定:使用Capabilities of the chrome driver of webdriver在Chrome用户配置文件中设置“异常(exception)”。基本上,我在 Protractor 配置文件中添加以下几行:

  capabilities: {
'browserName': 'chrome',
'chromeOptions': {
'prefs': {
'profile.content_settings.exceptions.clipboard': {
'http://localhost:8000,*': {'last_modified': Date.now(), 'setting': 1}
}
}
}
}

我通过在Chrome个人资料中查看 Default/Preferences文件来找到该值。

现在,它适用于我,但我不想使用未记录的功能,因为它们可以随时更改,而无需另行通知。您知道这样做的更好方法吗?谢谢。

最佳答案

如果有人想用C#做类似的事情,我将代码修改为:

var options = new ChromeOptions();
var clipboardException = new Dictionary<string, object> {
{"[*.]myurl.com,*",
new Dictionary<string, object> {
{"last_modified", DateTimeOffset.Now.ToUnixTimeMilliseconds()},
{"setting", 1}
}
}
};
options.AddUserProfilePreference("profile.content_settings.exceptions.clipboard", clipboardException);

关于selenium - 使用 Protractor 和Webdriver在自动测试中启用剪贴板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53669639/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com