在headless=true的终端中运行测试用例时。我收到以下错误消息。
错误消息
请查看以下详细信息:
我使用的是chromedriver版本86和chromebrowswer版本86,相同的版本已经在.env文件中更新。此外,我正在windows中使用Ubuntu运行这些脚本。
错误ERR_NAME_NOT_RESOLVED
意味着URL无法解析为IP地址。最有可能的是,ENV['URL']
没有返回有效的URL,主机名中有拼写错误,或者它引用了脚本的DNS无法解析的专用主机。考虑临时添加一些调试信息,例如
url = ENV['URL']
STDERR.puts "Navigating to [#{url}]"
$driver.navigate.to url
或者使用Pry暂停你的代码,并检查以确保事情如你所料:
require 'pry'; binding.pry
$driver.navigate.to ENV['URL']
从PryShell中,您可以看到ENV['URL']
的计算结果,还可以手动驱动$driver
,看看它是否如您所期望的那样工作。
如果URL实际上看起来是正确的,那么问题可能与私有主机和DNS问题有关。确保您可以在同一台服务器上通过其他方式导航到url(如果是服务器,请考虑尝试使用ping
作为主机名,或者使用curl
或wget
进行快速检查(。