Hi, I am attempting to use Bitbucket pipelines to run our Ruby Rspec/capaybara based specs.
I have the configuration working to the point where the tests are run, but I am having issues running chromedriver.
Selenium::WebDriver::Error::UnknownError:
unknown error: Chrome failed to start: exited abnormally
Those are the kinds of errors I am seeing.
I have seen this question posted:
https://community.atlassian.com/t5/Bitbucket-questions/BitBucket-Pipelines-Selenium/qaq-p/641852
But I do not want to set up browserstack in this instance, - but simply run the tests with chromedriver.
My yml file looks as follows:
image: ruby:2.4.0
pipelines:
default:
- step:
services:
- mysql
caches:
- bundler
script: # Modify the commands below to build your repository.
- bundle install
- apt-get update
- curl -sL https://deb.nodesource.com/setup_8.x | bash -
- apt-get install -y nodejs
- npm install
- npm install chromedriver
- rails db:migrate RAILS_ENV=test
- rspec
Hi @hugh
It is possible to run webdriver tests in Pipelines. This article provides some details using firefox but a similar approach can be taken with chrome: https://medium.com/@yiquanzhou/run-selenium-ui-tests-in-docker-container-78be98e1b52d
In fact we test pipelines using this method ;)
Thank you, that did help - I ended up setting it up using Firefox and Geckodriver, I kept running into issues with Chrome and Chromedriver.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
How possible without docker in bitbucket?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi @[deleted],
Bitbucket Pipelines is based entirely on Docker. When you run your build script you're doing so inside a Docker container. If you don't explicitly specify an image in the bitbucket-pipelines.yml file, it will use the default Pipelines image.
That doesn't mean you have to be using Docker in your application to use Pipelines. It simply provides the environment in which your build runs. This is extremely useful as you can preconfigure a Docker image to come with all the tooling you need to build, test and deploy your application (or use an existing image provided by the Docker community).
So while it's possible to set up and run webdriver in the script section of the bitbucket-pipelines.yml file, it's actually more beneficial to utilise an image that has already been configured with the necessary tooling. The linked article describes that process. You would then use the image as your build environment by specifying it as the `image` attribute in your bitbucket-pipelines.yml file (your actual build script should remain largely unchanged). This will also reduce your build times as Docker images are cached.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Is anybody still seeing this issue? I am able to run my selenium solution fine in Docker locally but when I run it in pipeline it crashes.
here’s my code. I am adding the sandbox flag as well
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
i am having the same issue, was anybody able to solve it?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
@StannousBaratheon Hi, I am trying to run selenium web-driver tests with maven as the build tool in bitbucket pipelines. I am getting this driver timed out issues. Below is the link where i have posted my question in this commnuity and yet to get a response for it.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.