私はfauxブログのphoenix appで作成した受け入れテストのグループを持っています。それらの間にいくつかの重複したロジックがあります。私はヘルパーモジュールに移動してDRYを維持したいと思います。ここでPhoenixのElixirヘルパーモジュールを作成して使用する
は、ディレクトリ構造である:私は重複受け入れテストロジックを固執したいのですがどこ
test/acceptance/post
├── create_test.exs
├── delete_test.exs
├── helpers.exs
├── index_test.exs
└── update_test.exs
helpers.exs
ファイルです。 、
defmodule Blog.Acceptance.Post.Helpers do
def navigate_to_posts_index_page do
# some code
end
end
index_test.exs
を言って、私が使用するヘルパーモジュールをインポートしたいのですが、それは方法です:それは次のように見えますが、私は取得しています
defmodule Blog.Acceptance.Post.IndexTest do
import Blog.Acceptance.Post.Helpers
end
このエラー:
** (CompileError) test/acceptance/post/index_test.exs:7: module Blog.Acceptance.Post.Helpers is not loaded and could not be found
テストファイルでヘルパーモジュールにアクセスする方法、またはロードする方法を教えてください。
ありがとう、クリス!魅力のように動作します。 ;)私はこの場合、Code.require_fileのアプローチが好きです。ヘルパーファイルを同じディレクトリに保存できるからです。しかし、リソース間で共有されているロジックを特定することができれば、test/support/test_helpers.exのアプローチは素晴らしい解決策になります。 –