Closed techanon closed 5 years ago
It seems like cucumber core 4.2.4 fixes the issue and makes this fix obsolete: see: https://github.com/cucumber/cucumber-jvm/commit/407627a96cbc2200246f460861489630f68ddde3
Keeping the fix will have scenarios with an outline and a test tabel run n^2 times because it makes cucumber ignore the line number in every runner, thus running all tests every single time. See also: https://github.com/cucumber/cucumber-jvm/commit/346b6e7ee8e064ae991c3d169ca727c6a3ae8a4f
So suggested workaround for the workaround: update core to 4.2.4 (or newer) and remove the fix.
Fantastic! Not sure about the n^2 problem with my shim, but I'm glad this is fixed in 4.2.4
PROBLEM:" error.
On WindowsOS, when trying to run cucumber:4.2.3 using the generated classes from this plugin v5.0.0 I am getting an error specifying an "Unsupported Scheme:
DISCOVERY:
I did some investigation into the code and figure out that in the generated files on windows (not sure about linux or mac), the features value is a normal windows path (expected). Then I debugged the cucumber runner and found that it was doing a comparison of the Scheme part of the path it is given.
For example: If the feature file is "C:\Users\user\workspace\app\src\test\resources\features\test.feature"
cucumber will try to get the scheme via the java Path api. This results in the scheme being "C" instead of "file" or "classpath" like it expects and throws an error.
TEMP SOLUTION:
I have created a simple shim that resolves this issue for me for the time being. See below:
This code (as the comment says) prefixes all paths that use the window's path style (letter and colon) with the
file:
scheme so that the Path API interprets the path scheme correctly.PROPOSED SOLUTION:
The simplest fix I have thought of is to add a maven config option that allows the person to define a custom scheme to prefix the feature file path of the generated runners.
Please let me know if I overlooked something that would nullify this issue, or if you need additional information.