Skip to content
This repository was archived by the owner on Apr 17, 2023. It is now read-only.

spec: added chrome headless as default js runner #1866

Merged
merged 1 commit into from
Jun 29, 2018

Conversation

vitoravelino
Copy link
Contributor

@vitoravelino vitoravelino commented Jun 25, 2018

So far the feature tests with js enabled were running through
poltergeist driver. As we know, PhantomJS was discontinued and
that's bad. PhantomJS was far from perfect and we've had a lot
of flaky issues with it.

Even knowing that most of those flaky issues were our fault, it's
always good to improve our workflow whenever possible. Based on this we
are adding chrome headless as our default js runner for our feature
tests.

Unfortunately we had to keep poltergeist for one scenario that we
couldn't make chrome headless work properly. That scenario is when the
dev runs the feature tests inside of the container. For bare metal and
travis, chrome headless works like a charm.

Signed-off-by: Vítor Avelino vavelino@suse.com

@vitoravelino vitoravelino force-pushed the chrome-headless branch 8 times, most recently from d074626 to 80c8e0a Compare June 28, 2018 16:49
@vitoravelino vitoravelino changed the title [wip] spec: migration poltergeist -> chrome [headless] spec: added chrome headless as default js runner Jun 28, 2018
@vitoravelino vitoravelino requested a review from mssola June 28, 2018 16:49
Copy link
Collaborator

@mssola mssola left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the commit message you are talking about PhantomJS being discontinued, wasn't it Poltergeist? If not, then can you remove the lines where we download phantomjs in Travis?

Dockerfile Outdated
@@ -33,4 +34,11 @@ RUN zypper addrepo https://download.opensuse.org/repositories/devel:languages:go
libtool m4 make makeinfo && \
zypper clean -a

# Add Google Chrome repo and install it
RUN zypper -n ar https://dl.google.com/linux/chrome/rpm/stable/x86_64 Chrome && \
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Merge with the above RUN block.

gem "codeclimate-test-reporter", group: :test, require: nil
gem "capybara-screenshot", "~> 1.0.0"
gem "chromedriver-helper"
gem "codeclimate-test-reporter", require: false
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why did you remove the test group here ?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Because it's already inside of the test group.

end
end

# HACK: when running tests inside of a container we should use poltergeist
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe this comment should go on the line where you set JAVASCRIPT_DRIVER.

@vitoravelino
Copy link
Contributor Author

In the commit message you are talking about PhantomJS being discontinued, wasn't it Poltergeist? If not, then can you remove the lines where we download phantomjs in Travis?

👍

@vitoravelino vitoravelino force-pushed the chrome-headless branch 5 times, most recently from d62378f to 6e680c1 Compare June 29, 2018 12:00
So far the feature tests with js enabled were running through
poltergeist driver. As we know, PhantomJS was discontinued and
that's bad. PhantomJS was far from perfect and we've had a lot
of flaky issues with it.

Even knowing that most of those flaky issues were our fault, it's
always good to improve our workflow whenever possible. Based on this we
are adding chrome headless as our default js runner for our feature
tests.

Unfortunately we had to keep poltergeist for one scenario that we
couldn't make chrome headless work properly. That scenario is when the
dev runs the feature tests inside of the container. For bare metal and
travis, chrome headless works like a charm.

Signed-off-by: Vítor Avelino <vavelino@suse.com>
@mssola mssola merged commit e6e116b into SUSE:master Jun 29, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants