我想对一个gen_fsm进行单元测试,该gen_fsm对其状态使用相当大的记录。该记录在erl文件中定义,该文件也定义了gen_fsm,因此(据我所知)其他模块不可见。
可能的方法:
还有其他建议吗?
答案 0 :(得分:4)
您可能会考虑将测试直接放入gen_fsm模块,这当然会让他们访问记录。如果您不想在生产代码中包含测试,并假设您正在使用eunit,则可以按照eunit user's guide中的指示有条件地编译它们:
-ifdef(EUNIT).
% test code here
...
-endif.