eunitEUnitは私的な関数をテストすることができません私はErlangコードのためのEUnitテストを書いています。?assertNot(prob_list:probability(?TEST_LIST,7))..........eunit:test(prob_list、[verbose])を実行すると、次のようになります。エクスポートすると、すべてが正常です。here.-endif.これにより、あなたのパブリック関数と一緒にプライベート関数をテストすることができます。私はあなたが書いたことをすべてやったが、私は同じ結果を得る。undefを取得します。源わかりました、私のせいで、テスト中の関数呼び出しからモジュール名を削除するのを忘れました。源-compile(export_all)ディレクティブを使用して、すべての関数を条件付きでエクスポートできます。introduction今私のソリューションは、TESTコンパイルですべての関数をエクスポートすることです。コンパイルし、必要な機能だけをエクスポートするために通常のコンパイルを行います。"-compile(export_all)"を使うことができます。大規模なエクスポートステートメントを維持する代わりに。源これは妥当なアプローチです(複数のエクスポートラインを持つことができますが、これは少し面白いかもしれません)。ユニットテストを別々のファイルに分けてプライベート関数をテストしたい場合は特にそうです。このアプローチの欠点は、テストに合格するコードにつながりますが、誤ってテストファイルの外にあるプライベートメソッドを使用した場合には実行されないということです。