Running Tests: Providing Support for JavaScript
Learn to set up testing with JavaScript support.
We'll cover the following...
Running tests that rely on JavaScript
OK, let’s take this up a notch. Setting up testing with JavaScript support is not going to be so straightforward with Docker. But you are ready to handle it.
Imagine that we have an enhanced version of our /welcome page
that has extra behavior that only works with JavaScript enabled. In fact, when functioning correctly, this JavaScript literally adds the message “ENHANCED!” on the page.
Modify index.html.erb
Here is a rather crude implementation in app/views/welcome/index.html.erb:
Modify application.html.erb
We also need a tweak to app/views/layouts/application.html.erb to make this work:
Adding scenario to test JavaScript behavior
Let’s add a second scenario to our page-views-spec.rb in spec/system to test this behavior:
As per the RSpec convention, we have indicated that this new scenario is only expected to pass with JavaScript enabled, by specifying js: ...