2016-07-23 8 views
0

Ich implementiere ein bisschen knifflige Funktionalität mit externen Bibliotheken, die ich nicht spotten kann. Sie müssen echte Anforderungen an den Server implementieren. So,Wie läuft man einen echten Phoenix Server während des Tests?

Wie kann ich einen Webserver während der Testdurchführung laufen lassen?

P.S. Mein config/test.exs:

config :my_reelty, MyReelty.Endpoint, 
    http: [port: {:system, "PORT"}], 
    url: [host: "localhost", port: 5000] # Specific port 

ich zu curl http://localhost:5000 versuchen aber immer curl: (7) Failed to connect to localhost port 5000: Connection refused

+1

Sie möchten Ihre Phoenix App auf Port 5000 ausführen, während Sie die Tests für dieselbe App ausführen? Entschuldigung, ich folge nicht dem, was du hier erreichen willst. – Dogbert

+0

Ja, ich möchte App auf Port 5000 ausführen, um Tests auszuführen – asiniy

+1

Haben Sie 'config: my_reelty, MyReelty.Endpoint, Server: true' in' config/test.exs'? Wenn nicht, versuche das hinzuzufügen. Ich kann von meinen Tests mit 'server: true' auf den Server zugreifen. – Dogbert

Antwort

1

Sie müssen server: true auf die Endpoint ‚s Config hinzuzufügen:

config :my_reelty, MyReelty.Endpoint, server: true 

Die phoenix.new bereits ähnliche Konfiguration generiert haben mit server: false (es für mich in v1.2.0), so können Sie nur ändern, false zu true.

+0

Danke! Genial – asiniy