5
我試圖測試一個包含主管和兩個(不同)工作人員的應用程序。我使用eunit,所以在我的設置和清理,我有:停止Erlang主管?
setup() ->
{ok, Pid} = foo_sup:start_link(),
Pid.
cleanup(Pid) ->
exit(Pid, kill).
foo_sup:start_link/0
被定義爲:
start_link() ->
supervisor:start_link({local, ?MODULE}, ?MODULE, []).
然而,當我的測試運行,我得到{badmatch,{error,{already_started,<0.188.0>}}}
,這意味着我的主管仍在運行。
如何:
- 信號監事停止本身及其所有的孩子?
- 等待完成?
而是「關閉」的,用「正常」,所以它不打倒測試過程也是如此。 – hammett