Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
Sumit Saxena
@sumsax
but still it execute sequentially , anything Iam missing
Abhinaba Ghosh
@abhinaba-ghosh
Hi, currently protractor supports parallel feature files execution, not scenario. If you want to try that out, you can checkout this starter kit : https://github.com/abhinaba-ghosh/protractor-cucumber-serenity-typescript-starter
Olga
@osmolyar

Hello everyone, I hope this is the right place to ask this question. I'm running @wdio/cucumber-framework, but maybe those of you familiar with cucumber-js will be able to see the problem. I've defined and set a custom World constructor, and it is being re-constructed with each scenario as expected, as I can see by a console.log("Constructing world") inside the custom constructor function. However: Each scenario is able to somehow modify the subsequently constructed object rather than having it re-constructed with defaults as specified, and the modifications don't get overwritten for the new scenario. world.js looks like this:

const options = {loginBusinessOptions: {
    login: "abc",
    password: "xyz"
    }};

function CustomWorld() {
    console.log("Constructing world");
    console.log("options.loginBusinessOptions is " + JSON.stringify(options.loginBusinessOptions));
    this.nav = {};
    // this.context=options;
    this.context=Object.assign(options);

}
export default CustomWorld

Observe output of running a scenario twice, where the first scenario sets "this.context.loginBusinessOptions.login='new login' instead of its original value 'abc' as set in the 'options' object above, showing that the 'options' object has been overwritten by the 1st scenario's setting of this.context.loginBusinessOptions.login.

This happens whether the custom constructor simply sets 'this.context=options' or does an Object.assign to prevent the two objects being treated as the same object.

[0-0] Constructing world
[0-0] options.loginBusinessOptions is {"login":"abc","password":"xyz"}
[0-0] ***this.context.loginBusinessOptions is {"login":"abc","password":"xyz"}
Constructing world
options.loginBusinessOptions is {"login":"new login","password":"xyz"}
***this.context.loginBusinessOptions is {"login":"new login","password":"xyz"}

There is a reproducible example of this here: https://github.com/osmolyar/wdio_cucumber_world_not_reinitialized . or - if this does not happen with cucumber-js, it can be narrowed down to a @wdio/cucumber-framework issue. Thanks in advance for any guidance.

viktor-silakov
@viktor-silakov
How can I use data transformation for "docstring"?
I make this:
image.png
but this only works for usual parameters, not for docstring
Kirill Eremin
@StaroKep
Hello! Help me please. Maybe you have so problem?
After launching tests we have blank chrome window and error: this is not defined for functions inside Given, Then, etc...
It's strange because all my teammates don't have so problem.
The version of nodejs is 12.13.0 and OS is MacOS Catalina
motha02
@motha02
Hi ,
Does cucumber with typescript support @and decorator?
manoj0516
@manoj0516
chromedriver 83 has been released so if we are not able to get it through package.json then delete entry of chromedriver from package.json and do force download through following command npm install chromedriver --chromedriver-force-download
Dmytro
@Dmytro89_gitlab
@StaroKep Hi, Can it be reproduced on other OS? For example, Windows
Kirill Eremin
@StaroKep
@Dmytro89_gitlab It's strange, but after xcode updating, all works fine
Ghost
@ghost~5714c5cb187bb6f0eadffbf0
Hello! What is the best solution(framework) for API testing with Cucumber-js? Thanks!
Abdul Aziz
@abdulazizkarim11
hello
Olga
@osmolyar
@a22183nj , @ThomasGHenry , is your setWorldConstructor() being called from a step definition file?
Abdul Aziz
@abdulazizkarim11
Can someone help me please, I am new to automation. I have set up framework using selenium web driver , BDD cucumber using node JS. I have a feature file with 2 scenarios. It successfully runs the first one but with the second one or just opens up a browser. I have a steps page and object page. What do I need to do on order for both scenarios to run please. Thanks
ricardgarcia
@ricardgarcia
how do you run the feature file?
is there any error you get?
Oriol
@skirep

Hello! What is the best solution(framework) for API testing with Cucumber-js? Thanks!

We are using SuperTest and cucumber.

Ghost
@ghost~5714c5cb187bb6f0eadffbf0
@skirep Thank you!
Abdul Aziz
@abdulazizkarim11
@ricardgarcia I don't get no error . I just run command npm test. It runs the first scenario but does not run second scenario
ricardgarcia
@ricardgarcia
try running npm test --specs <name of your feature file> @abdulazizkarim11
Olga
@osmolyar
Question from the wdio-cucumber-framework viewpoint - does cucumber.js expose 'world' in before/afterScenario hooks?
@StaroKep , are your step definitions defined as arrow functions? In that case they won't have access to a 'this'
brownad
@brownad
Morning, how or what is the approach in cucumber js to close and restore the browser after each scenario in a feature? Similar to what mocha (webdriverio) does between each test? Or it is a different understanding to appreciate? I can quit() and closeSession() in a hook no problem but bringing back the browser(s) to start next session isn't so clear how to best achieve this. Any guidance please? I'm using WDIO v6
brownad
@brownad
found it, simple browser.reloadSession() in the global hooks, does the trick nicely! :)
brownad
@brownad
Anyone explain how to pass a reference in.. something like this (doesn't work in cucumber syntax)
Scenario:
Given I want "browserA" to refresh
Step:
Given(/^I want "([^"]*)" to refresh$/), (browserN) => { browserN.refresh() })
I've clearly misunderstood how to pass this in correctly, I achieve a similar approach with Mocha WDIO, where we have multiremote in use, and send commands across different running browsers (users). How do I do something similar in cucumberJS? thanks in advance
vrudhay
@vrudhay
How to deliberately fail the cucumber step because the functionality failed
brownad
@brownad
found it using eval() on browser, to get the obj not the string :( doh
Daniel Montesinos
@damonpam
Hello! does somebody know if is it possible to define our own custom table types, like java version does: https://github.com/cucumber/cucumber/tree/master/datatable#custom-table-types
??? thanks!!
Kirill Eremin
@StaroKep

@osmolyar

@StaroKep , are your step definitions defined as arrow functions? In that case they won't have access to a 'this'

We don't use arrow functions. We use function(){...}.
We updated Xcode and all started work fine. It's strange, but it helped us to solve the problem.

Rafael
@rsantosr
Hi guys!. I have a question. I am new at "Cucumber-js" For execute your tests in node js. what command line do you use?. How to configure my proyecto for only execute "cucumber-js src/features/login.feature" ?. I'm using only cucumber and gRPC for API test.
Rahul Sharma
@RahulSharma19_gitlab
Hi All, Is there a way to update cucumber.json report after or during execution? I want to add some meaningful text along with the error message for failed steps.
Priyanka Kondajji
@priyankakondajji
This was all good. I had removed arrow functions and was working fine. But from yesterday, I get this TypeError: this.attach is not a function. and also while comitting the code, i get as "Unexpected unnamed async function (func-names)"
When('Post a transition , async function() { this.attach(Transition with payload: ${JSON.stringify(payload, undefined, 4)});
});
Joe Gornick
@jgornick
Hey folks, using wdio w/ cucmberjs and was wonderig if there was a way to inject values into the datatable at runtime so that when we get to beforeScenario, the scenario is compiled with the new datatable values?
ktordoff13
@ktordoff13
I keep getting these types of errors when a timeout is reached function timed out, ensure the promise resolves within 120000 milliseconds when running tests via saucelabs. I'd like to see what element it failed on so I don't have to go into saucelabs see the error there. Is there anyway to have a more useful timeout message?
lokesh
@lokeshkp
Hi All,
When I'm integrating cypress with cucumber I'm ending with the following error
1 reply
image.png
can anybody help me on this?
image.png
image.png
folder structure is as follows,
crazy-reva
@crazy-reva
Hello everyone, is there any way to run the cucumber feature files multiple times in afterFeature hook in Webdriver IO?
Josemy Duarte
@JosemyDuarte
Hi pps! Quick question.. Does anyone know how to make work cucumber.js with path aliases? I'm having this problem:
image.png
jayraj10
@jayraj10

Hello everyone, I am using jest cucumber on top of jest puppeteer & into jest.setup file under afterEach I am capturing the screen shot .. but unable to linked them to cucumber report ? (Cucumber.json file is created but unable linked failed screenshot)

jest-cucumber version 2.0.12

Daniel Montesinos
@damonpam
Hello! is there any tool to document all the step-definitions we have defined within a project?
plocket
@plocket
I'm trying to make an npmjs package for cucumber so that a developer can just write cucumber files. Is there an example of that that someone can point me to? Or documentation on how to do it?