有没有办法检查一个函数是否从ExUnit测试用例中被调用?我有一个调用IO.puts的函数,我想通过测试用例来测试和验证是否有东西被输出到STDOUT。我看到了这个链接:http://erlang.org/pipermail/erlang-questions/2005-July/016259.html。但是我希望使用ExUnit有一个更简单的方法来做到这一点。有没有办法检查并查看我的函数是否调用了IO.puts?或者至少检查并查看是否有东西被发送到STDOUT?
如果您只想通过测试用例测试标准输出,我认为可以使用CaptureIO。以下是规范和示例代码。 https://hexdocs.pm/ex_unit/master/ExUnit.CaptureIO.html 您可以使用一些模拟库来模拟方法调用,但对于STDOUT,上述方法可能是更简单的方法。 https://github.com/jjh42/mock https://github.com/josephwilk/amrita