Hi
First of all, this project is impressive and seems to answer most of my needs. Many thanks for taking this initiative.
Here is what we do in our team -
a) We make use of SpecFlow
b) We have written a custom NUnit fixture generator plugin for SpecFlow
c) We have written a custom NUnit AddIn that introduces new TestCase attributes and have hooks into parameterization process
End result is that a Scenario Outline like this :
| param1 | param 2| param 3|
| 45 | 34 | TipToe |
gets translated into the testcase name :
MyNameSpace.MySenarioName(param1=45-param2=34-param3-TipToe)
Because of all this customization of our testcases we are not able to make use of the functionality to connect the test results with the features using pickles
I started to read the code and here is what I have discovered :
- You have NUnitExampleSignatureBuilder that constructs the testcase name regular expression
- NUnitSingleResults::IsMatchingTestCase then tries to match the testcase name read from the xml file with the regular expression
The regularexpression expects the name to be same as the one that nunit will generate by default
Essentially, if I can modify either the regular expression or the name read from the nunit xml file then I would get the match.
This brings few challenges :
a) I would have to re-write NUnit support in TestFrameworks and call it MyCustomSingleResults.cs
b) I would have to write my own PickleModule that would register MyCustomSingleResults
c) I would have to write my own command line program (or rather duplicate it) and use my own PickleModule
I believe it is doable but doing so much modification to change the implementation of one or two methods is requiring lot of changes.
Is there any obvious path that I am missing here that would help me the same objective in a simpler way ?
Please educate.
Regards
Kapil