Comments (6)
I think that the new version of cucumber requires a huge refactoring of the project :|
In the next days I will try to update the version and will change the whole code to es6 (I need a new cucumber version and es6 for an internal project used by my company), but I don't think that the owner of the project will be happy :P
from selenium-cucumber-js.
Why would you change the codebase to es6?
from selenium-cucumber-js.
Because the latest cucumber-js release uses es6 and you need to refactor index.js and world.js in order to use that library. We can't mix es5 and es6 because eslint will scream to us and run in circle 😄
BTW this could make the implementation of the helpers, steps, etc... much simpler:
Look to your example at "step-definitions/google-search-steps.js", you can write it in this way with es6:
this.Then(/^I should see some results$/, () =>
driver.wait(until.elementsLocated(by.css('div.g')), 10000)
.then(() => driver.findElements(by.css('div.g')))
.then((elements) => expect(elements.length).to.not.equal(0))
);
from selenium-cucumber-js.
If that's true, it'll impact everyone using the project and all the tests/page objects they've created. I'll be honest, I'm not convinced it's necessary
from selenium-cucumber-js.
When I am trying to upgrade to newer version from index file getting some error. Its not related to es5/6. Its related to Cli. Would you be able to help me on this.
from selenium-cucumber-js.
I've made changes to selenium-cucumber-js to make it compatible with Cucumber-js v6.0. There were a lot of braking changes :/ and upgrade is not backwards compatible.
To get it work you need to:
- Upgrade all step-definitions to use new sytax (remove this and module.export). Both features and page-objects should work fine.
- Unfortunately require-dir no longer support camel-case - you need to change folder name to camelCase to keep it working.
- I've changed command to selenium-cucumber-es6.
Repository: https://github.com/dcmarti/selenium-cucumber-es6
Comments are welcome.
from selenium-cucumber-js.
Related Issues (20)
- [Documentation bug] demo project doesn't work out of the box HOT 1
- The version of chromedriver installed by default together with selenium-cucumber-js is too old and unsupported by modern browsers HOT 2
- How to change the heading of the report? HOT 1
- NoSuchSessionError with custom Firefox driver
- Move CI from Shippable to Github Actions
- Throwing exception
- phantomdriver-rebuild version 2.1.12 giving high security risk, so update to 2.1.16
- a high severity vulnerability introduced in selenium-cucumber-js HOT 2
- Issues with npm install and running tests on a mac HOT 2
- Allow directories in pageObjects
- Running tests on chrome fails at WebDriver.manage().window().maximize()
- Selenium cucumber does not run on Mac HOT 5
- Is it necessary for electron-prebuilt to be a hard dependency? HOT 1
- Running on different browsers/devices over Browserstack HOT 1
- How to get command line arg before executing tests? HOT 1
- session not created: Chrome version must be between 71 and 75 HOT 4
- Can we upgrade the cucumber version? Facing issue when trying to upgrade to newer version. Help will be appreciated. HOT 1
- Add configuration for where `features` folder can be placed
- How do I make my tests run with chrome 78? HOT 3
- How can I read localStorage in test? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from selenium-cucumber-js.