Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improvement/selenium js set up #620

Merged
merged 44 commits into from
May 1, 2019
Merged

Conversation

rfreitas
Copy link
Contributor

@rfreitas rfreitas commented Apr 15, 2019

Problem

The ruby test stack (after much trying) does not allow us to upload file to IE11 on browserstack.
Also it's a very inflexible stack, since it's based on a library which was designed for particular cases (monster)

Solution

Create a new stack based in JS (since it's the main language of the project), that allow us to define tests and the browsers (local or remote) that will run those tests.

The approach was also to start small for now (only one test case with file upload)

Technical considerations

  1. webdriverio was tried, but it didn't work with file upload. They have removed support from in the latest versions.
  2. Selenium (js) webdriver was picked instead. It works well. It's fully async though, which makes code a bit more complicated
    2.1. Babel auto await was added to simplify the test case code
  3. Mocha was added due to good community support. However some changes were done to reduce the need for globals. Namely the name main mocha functions were wrapped to allow for the non global passing of the driver and also the initialization of page objects
  4. The ruby test execution was brought into the js scripts, so that parallelization can happen and so can does the sharing of the http server.

Checklist

put n/a if item is not relevant to PR changes

  • Have the CHANGELOG, README, MIGRATION, RELEASE_GUIDELINES docs been updated?
  • Have new automated tests been implemented?
  • Have new manual tests been written down?
  • Have tests passed locally?
  • Have any new strings been translated?

@rfreitas rfreitas changed the base branch from master to development April 15, 2019 11:40
@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://staging-620-pr-onfido-sdk-ui-onfido.surge.sh

@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://release-620-pr-onfido-sdk-ui-onfido.surge.sh

@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://staging-620-pr-onfido-sdk-ui-onfido.surge.sh

@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://staging-620-pr-onfido-sdk-ui-onfido.surge.sh

@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://release-620-pr-onfido-sdk-ui-onfido.surge.sh

@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://staging-620-pr-onfido-sdk-ui-onfido.surge.sh

@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://release-620-pr-onfido-sdk-ui-onfido.surge.sh

@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://620-pr-onfido-sdk-ui-onfido.surge.sh

@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://staging-620-pr-onfido-sdk-ui-onfido.surge.sh

@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://release-620-pr-onfido-sdk-ui-onfido.surge.sh

@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://620-pr-onfido-sdk-ui-onfido.surge.sh

Consistent indentation in util file
Renamed copy to string for more familiar international speakers
@rfreitas rfreitas force-pushed the improvement/selenium-js-set-up branch from 1b4afef to 9bb9fe3 Compare April 30, 2019 09:21
@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://staging-620-pr-onfido-sdk-ui-onfido.surge.sh

@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://release-620-pr-onfido-sdk-ui-onfido.surge.sh

@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://620-pr-onfido-sdk-ui-onfido.surge.sh

@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://staging-620-pr-onfido-sdk-ui-onfido.surge.sh

@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://release-620-pr-onfido-sdk-ui-onfido.surge.sh

@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://620-pr-onfido-sdk-ui-onfido.surge.sh

@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://staging-620-pr-onfido-sdk-ui-onfido.surge.sh

@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://release-620-pr-onfido-sdk-ui-onfido.surge.sh

@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://staging-620-pr-onfido-sdk-ui-onfido.surge.sh

@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://release-620-pr-onfido-sdk-ui-onfido.surge.sh

@rfreitas
Copy link
Contributor Author

Travis automatic deployment: https://620-pr-onfido-sdk-ui-onfido.surge.sh

Copy link
Contributor

@stefaniacardenas stefaniacardenas left a comment

Choose a reason for hiding this comment

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

Looks good to me. Do we need to add an internal note in the changelog?

@rfreitas
Copy link
Contributor Author

I don't think so. it's not in the sdk codebase.

@bartzet bartzet merged commit 4c73c7f into development May 1, 2019
@josokinas josokinas deleted the improvement/selenium-js-set-up branch July 10, 2020 13:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants