1

さまざまなスーパーバイザー戦略がどのように機能するかを説明するために、ExUnit でいくつかのテストを作成しています。生成されたプロセスを意図的に失敗させ、再起動されたプロセスの出力をテストすることで、結果をテストすることを計画していました。

これまでのところ、最初のプロセスの失敗によってテストが失敗するため、合格するテストを作成できませんでした。Supervisor/GenServer の実装とテストの実装の両方でエラー (try/catch) をキャプチャしようとしましたが、エラーをキャプチャしてテストの失敗を回避することはできませんでした。

  1. テストの失敗を引き起こさないように、これらのエラーをキャプチャする方法はありますか?
  2. 異なるスーパーバイザー戦略をテストするためのより良い/異なる手段はありますか?

ありがとう!

4

2 に答える 2

1

意図的にプロセスを失敗させ、ExUnit テスト内でこの失敗を無視したかったため、テスト プロセスの失敗を防ぐために catch_exit/1 を使用することになりました。

于 2014-07-22T23:02:20.423 に答える