Debian 铬合金无头袋鼠坠毁
我正在开发一个基于Elixir和Phoenix的应用程序,它还使用Wallaby应用程序在无头Chrome浏览器中进行基于HTTP的测试 最近,我在执行ExUnit测试时收到一条相当笨拙的错误消息:Debian 铬合金无头袋鼠坠毁,debian,elixir,google-chrome-headless,ex-unit,wallaby,Debian,Elixir,Google Chrome Headless,Ex Unit,Wallaby,我正在开发一个基于Elixir和Phoenix的应用程序,它还使用Wallaby应用程序在无头Chrome浏览器中进行基于HTTP的测试 最近,我在执行ExUnit测试时收到一条相当笨拙的错误消息: ** (MatchError) no match of right hand side value: {:error, {:wallaby, {:bad_return, {{Wallaby, :start, [:normal, []]}, {:EXIT,
** (MatchError) no match of right hand side value:
{:error, {:wallaby, {:bad_return,
{{Wallaby, :start, [:normal, []]},
{:EXIT,
{%Protocol.UndefinedError{description: "", protocol: Enumerable, value: nil},
[{Enumerable, :impl_for!, 1, [file: '/root/deb/elixir_1.8.0-1/lib/elixir/lib/enum.ex', line: 1]},
{Enumerable, :slice, 1, [file: '/root/deb/elixir_1.8.0-1/lib/elixir/lib/enum.ex', line: 193]},
{Enum, :backwards_compatible_slice, 1, [file: 'lib/enum.ex', line: 2871]},
{Enum, :slice_any, 3, [file: 'lib/enum.ex', line: 3075]},
{Enum, :at, 3, [file: 'lib/enum.ex', line: 381]},
{Wallaby.Experimental.Chrome, :validate, 0, [file: 'lib/wallaby/experimental/chrome.ex', line: 36]},
{Wallaby, :start, 2, [file: 'lib/wallaby.ex', line: 27]},
{:application_master, :start_it_old, 4, [file: 'application_master.erl', line: 277]}]}}}}}}
test/test_helper.exs:4: (file)
(elixir) lib/code.ex:767: Code.require_file/2
(elixir) lib/enum.ex:769: Enum."-each/2-lists^foreach/1-0-"/2
(elixir) lib/enum.ex:769: Enum.each/2
我正在运行Debian GNU/Linux 9“Stretch”,并在binaries.erlang solutions.com
上安装Elixir作为.deb
软件包,版本为1.8.0-1。小袋鼠被锁定到{:wallby,~>0.21.0}
对于如何解决这个问题,我们将不胜感激。这个问题是由Wallaby 0.21.0无法处理高于2.x的ChromeDriver版本引起的,但高达71.x的ChromeDriver版本已经存在
这已由修复,已合并到Wallaby
master
,但似乎尚未发布。v0.21.0
是Wallaby的最新版本,在中有不同的代码。从更新Wallaby开始。遗憾的是,我已经在运行{:Wallaby,~>0.21.0}
。啊,事实上,我误读了代码。那么唯一的选择就是克隆、调试、修复并提供PR。或者回滚到Elixir 1.7:)我现在降级了Elixir,发现错误仍然存在于Elixir 1.7.4中。所以它不像以前怀疑的那样是Elixir1.8的问题。