HashNuke / hound

Elixir library for writing integration tests and browser automation
http://hexdocs.pm/hound
MIT License
1.36k stars 145 forks source link

Problem with acceptance test in hound not starting server on port 4001 in phoenix #242

Closed wolfiton closed 5 years ago

wolfiton commented 5 years ago

Hello everyone,

I have a problem in using hound to create a simple acceptance test following this https://shankardevy.com/phoenix-inside-out-mpf/#setting-up-hound 1

Even thought i followed all the instructions I am getting a failure:

mango mix test ./test/mango_web/acceptance/homepage_test.exs\

1) test presence of featured products (MangoWeb.HomepageTest) test/mango_web/acceptance/homepage_test.exs :7 Assertion with =~ failed code: assert page_source() =~ "Seasonal products" left: "" right: "Seasonal products" stacktrace: test/mango_web/acceptance/homepage_test.exs :10: (test)

Finished in 0.3 seconds 1 test, 1 failure

Also i am using phantomjs like this

phantomjs --wd Here is the github repo with all the code i have for chapter 3 https://github.com/wolfiton/hound-problem-ch3

This issue I also describe it here in more detail https://elixirforum.com/t/problem-with-acceptance-test-in-hound-not-starting-server-on-port-4001/24460

Thanks in advance

wolfiton commented 5 years ago

Solve the problem using the following

If anyone needs a solution to this problem follow the steps:

I assume also that you installed phantomjs using sudo apt-get install phantomjs already in Ubuntu

If you did not then don;t use step 1 the following steps are applicable

Step 1 sudo apt-get remove --purge phantomjs This command will remove phantomjs and all it’s configuration files in one go(you need root password for sudo action)

Step 2 Head over to https://phantomjs.org/download.html and download the Linux 32 or Linux 64 archive then open a terminal and navigate to where you file has been downloaded using cd(most common place is Downloads socd ~/Downloads should do it)

Step 3tar xjvf phantomjs-2.1.1-linux-x86_64.tar.bz2 after extraction you should get a folder with the same name

Step 4cd ~/Downloads/phantomjs-2.1.1-linux-x86_64/bin(this can be done in one line using cp but preferred this method for clarity reasons)

Step 5sudo cp -R./phantomjs /usr/local/bin This command copies the phantomjs executable binary to the usr/local/bin

Step 6 Verifywhich pahntomjs the result should be usr/local/bin/phantomjs

Now you are good to go.

Ref: https://elixirforum.com/t/problem-with-acceptance-test-in-hound-not-starting-server-on-port-4001/24460/3

wolfiton commented 5 years ago

Solved, don;t use sudo apt-get install phantomjs in Ubuntu install using my method from step 2 forward