gpt4 book ai didi

perl - Selenium /网络驱动程序 : use existing Firefox profile?

转载 作者:太空宇宙 更新时间:2023-11-03 13:35:40 29 4
gpt4 key购买 nike

我使用 Perl 和 Selenium/Webdriver 编写用户界面测试。我知道我可以使用 Selenium::Firefox::Profile为 Firefox 创建配置文件的模块。

我想使用我的默认配置文件,或者使用 Firefox 配置文件管理器创建的配置文件。是否可以使用现有的 Firefox 配置文件进行测试?

这行不通:

my $ff_profile = Selenium::Firefox::Profile->new('default-1480098066829');

my $driver = Selenium::Remote::Driver->new(
'remote_server_addr' => 'localhost',
'browser_name' => 'firefox',
'firefox_profile' => $ff_profile,
'port' => '5555',
'marionette_enabled' => 1,
);

我的默认配置文件接受必须测试的内部网页的自签名 SSL 证书。当 Webdriver 打开带有新配置文件的页面时,由于 Firefox 证书对话框而失败。

如果我不能使用我的默认配置文件,有什么方法可以将此证书添加到 Webdriver 的新配置文件中吗?

最佳答案

我没有使用 Selenium::Firefox::Profile 的经验, 但看着 the source ,它不提供任何使用现有配置文件设置的方式,但将始终使用 Firefox 的默认设置,并允许通过调用 set_preference 对其进行更改。和 set_boolean_preference

清楚的是 new构造函数只需要参数的散列,并且该散列的唯一重要元素具有键 profile_dir

这意味着你的电话Selenium::Firefox::Profile->new('default-1480098066829')将导致

odd number of elements in hash assignment

当你寻求帮助时,你应该报告。如果您没有看到该消息,则您没有 use warnings到位,这对你来说会很寒酸

你可以试试 Selenium::Firefox::Profile->new( profile_dir => '<my Firefox profile folder>' ) ,但如果变化很大,我会感到惊讶。默认情况下,模块使用 File::Temp创建一个新的临时文件夹并将新的配置文件放在那里

您可能必须找到默认配置文件中缺少的选项的名称并明确添加它们,除非比我更有知识的人有更好的主意

关于perl - Selenium /网络驱动程序 : use existing Firefox profile?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41188749/

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