End-to-end testing is a methodology used to test whether the flow of an application is performing as designed from start to finish.
End-to-end testing involves ensuring that that integrated components of an application function as expected.
The entire application is tested in a real-world scenario such as communicating with the database, network, hardware and other applications.
Capybara?
Nightwatch?
PhantomJS?
NightmareJS?
Protractor?
Rspec?
Karma?
Cucumber?
By Krzysztof Jung