Ich habe eine Gruppe von Akzeptanztests, die ich in meiner faux blog phoenix App erstellt habe. Es gibt eine duplizierte Logik zwischen ihnen. Ich würde gerne zu einem Helfer-Modul wechseln, um die Dinge trocken zu halten.
Hier ist die Verzeichnisstruktur:
%Vor% In der Datei helpers.exs
möchte ich die duplizierte Akzeptanz-Test-Logik beibehalten. Es sieht ungefähr so aus:
Dann in einer meiner Testdateien, sagen wir index_test.exs
, ich möchte das Helfermodul importieren, um seine Methoden zu verwenden:
Allerdings bekomme ich diesen Fehler:
** (CompileError) test / acceptance / post / index_test.exs: 7: Modul Blog.Acceptance.Post.Helpers ist nicht geladen und konnte nicht gefunden werden
Wie bekomme ich Zugriff auf oder lade das Hilfsmodul in meinen Testdateien?
Um das Modul test_helpers.exs
Helpers verfügbar zu machen, müssen Sie Code.require_file
verwenden, um es zu laden. In diesem Fall hat Phoenix jedoch Ihr Projekt so konfiguriert, dass .ex
files in test/support
genau für solche Fälle in das Projekt kompiliert wird. Wenn Sie also Ihr Modul in test/support/test_helpers.ex
platzieren, wird es mit Ihrem Projekt kompiliert und für alle Testdateien verfügbar, ohne Code.require_file
it.
Tags und Links elixir phoenix-framework