I'm able to run testng scripts upon integrating with cucumber. I've followed the exact steps defined in http://automatictester.co.uk/2015/06/11/basic-cucumberjvm-selenium-webdriver-test-automation-framework/ link.
Now I’ve one more requirement. can you explain me how to read values from parameters tag of testng.xml. See below example:
<test name="ascentis.LoginDemo.Firefox">
<parameter name="BrowserName" value="Firefox" />
<parameter name="Environment" value="local" />
<packages>
<package name="runnerFiles.*"/>
</packages>
</test>
I’ve to read BrowserName and Environment values from parameters tag. I’ve tried to use @parameters for @Before method of cucumber but it didn’t work out and gave exception that @Before hook only accepts one parameter that too of type scenario. can you explain me how to read values from parameters tag to access in stepDefinations of cucumber.
Well, I'm not sure if parametrisation of CucumberJVM tests on
testng.xml
level is what you are really looking for. However, if you really need to read parameters fromtestng.xml
file in your CucumberJVM framework, here is a (dirty) solution for you:DownloadFeatureRunner
extend CustomRunner instead ofAbstractTestNGCucumberTests
testng.xml
file:<parameter name="someParam" value="someValue"/>
and also implement you new parent class:
As you can see, you can access value of the parameter. It's up to you what you want to do with it now.