【发布时间】:2020-10-27 23:16:48
【问题描述】:
当我运行 mix test 时,我会在 shell 中返回所有结果。 我怎样才能将结果发送到更多的地方,如 slack、文件等?
【问题讨论】:
当我运行 mix test 时,我会在 shell 中返回所有结果。 我怎样才能将结果发送到更多的地方,如 slack、文件等?
【问题讨论】:
要将mix test 的结果写入文件,您可以:
mix test > results.txt
要将它们发布到 Slack,您可以使用他们的 Web API,您可以在此处找到:https://api.slack.com/web
【讨论】:
results=cat results.txtcurl -X POST -H "Content-Type: text/plain" --data $results http://api.slack.com
我在https://stackoverflow.com/a/41350442/11678286 中找到了我的问题的答案。 要为 ExUnit 结果配置您自己的配置,我需要实现我自己的格式化程序(例如,请参阅 https://github.com/elixir-lang/elixir/blob/master/lib/ex_unit/lib/ex_unit/cli_formatter.ex;这是默认格式化程序)并配置 ExUnit 以使用它:
ExUnit.start(formatters: [YourFormatterModule])
为了将结果发送到其他地方(如 slack),我只需要复制默认格式化程序并在那里添加将其发送到 salck 的函数。
【讨论】: