I have a sequence of tests, each using a DLL that outputs a unique string to that particular test. Unfortunately, after executing this sequence, the report file prints the string for the last test in the sequence as the result for every test (i.e. I have 40 tests, and all of them have the same results as the 40th one.)
I'm using the ModifyReportEntry callback, like this:
Parameters.ReportEntry += FileGlobals.Results
where FileGlobals.Results is the output string.
It looks like I should be adding to the report right after each test has executed, as my string variable seems to get overwritten as the sequence gets executed? How do I do this? (Shouldn't it already be doing this anyway?)
The ModifyReportEntry gets called as part of the last call in PutOneResultInReport which is all part of the Test Report call.
This is done when all the testing have completed. As you dont appear to be indexing data from an array of results this is why you are seeing the same data.
You need to be modifying the step result as they happen either in the Post Expression of the step (but I have a feeling that the Step Result will not be available at this time until the Step has completed its execution) or as part of the Post Step function. There is an override SequenceCall called SequenceFilePostStep. But bear in mind that anything you do in SequenceFilePostStep will affact every step in your sequence file.
In Resource Library|TestStand|Result Collection and Report Management|Re port Management:
There are a couple of examples that might solve your problem.
Reporting Post Action Results Setting up Report Generation On the Fly