robotframework-maven-plugin: 1.0.6
robotframework: 2.8.1
Due to necessary workarounds our testsuite executes tons of keywords (due to many loops).
It seems that the generation of output.xml of Robot Framework isn't stable anymore when exceeding some size. Many non-deterministic bugs with different symptoms appear: generation of output.xml stops without closing tags; the generated output.xml mixed the order of tags and isn't wellformed anymore; ...
I tried it with removeKeywords, but that reduced only the size of the log.html. BTW the following paragraph suggests that all outputs (including output.xml) were reduced in size if one uses removeKeywords:
I haven't found another option to reduce the size of output.xml here: http://code.google.com/p/robotframework/source/browse/src/robot/run.py?name=2.8.1
Ugh
If you do not need the output file, you can disable the output file generation [1] from command line. If i recall correctly it should be also possible from Maven plugin.
--
You received this message because you are subscribed to the Google Groups "robotframework-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to robotframework-u...@googlegroups.com.
To post to this group, send email to robotframe...@googlegroups.com.
Visit this group at http://groups.google.com/group/robotframework-users.
For more options, visit https://groups.google.com/groups/opt_out.
Hi all,
thank you all for your input.
An update of the robotframwork-maven-plugin hasn't solved our problem.
After analysing the broken output.xml's we found, that all of the problems are in relationship to exceeded testcase-timeout:
As one example a testcase that exceeds a testcase-timeout looks like that:
Testcase 1.1
[Timeout] 2min
Any Keywords
[Teardown] Any Keyword
The xml of that testcase was missing the end tag </kw> for <kw type="teardown" name="Any Keyword"> and it was also missing the preceding <status> element.
Both of them were found in the succeeding testcase at an apparently random position, destroying the wellformedness of this testcase and the xml as a whole.
Unfortunately I wasn't able to reproduce the bug (also because it happens non-deterministic) but removing the testcase-timeout should solve our problem.
Unfortunately the bug shows only in a certain state of our AUT and at the moment I can't verify if my assumption is correct.
Can you please show me the lib in RF, that's responsible for the generation of output.xml?
Thanks,
Yours Michael
In another case, the err messages from the suites Libraries' initialization were produced at the wrong place:
-----------------------
<kw type="kw" name="${out}, ${err} = SSHLibrary.Execute Command"
timeout="">
<doc>Executes command on remote host over existing SSH
connection and returns stdout and/or stderr.</doc>
<arguments>
<arg>${command}</arg>
<arg>both</arg>
</arguments>
<msg timestamp="20131104 15:40:38.653" level="INFO">Executing
command 'xxxxxxxxxxxxxxxxxxxx'
</msg>
<msg timestamp="20131104 15:40:45.285" level="INFO">${out} =
xxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxx
</msg>
<msg timestamp="20131104 15:40:45.285" level="INFO">${err} = </msg>
<status status="PASS" endtime="20131104 15:40:38.654"
starttime="20131104 15:38:43.565"></status>
</kw>
<kw type="kw" name="BuiltIn.Log" timeout="">
<doc>Logs the given message with the given level.</doc>
<arguments>
<arg>${out}</arg>
</arguments>
<msg timestamp="20131104 15:40:51.888" level="INFO">
<errors>
<msg timestamp="20131104 15:38:15.812" level="ERROR">Error in file
'xxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
in table 'Variables': Setting variable '${TEST_RAND_NAME}'
failed: Non-existing variable '${TEST_NAME}'.</msg>
<msg timestamp="20131104 15:38:15.963" level="ERROR">Error in file
'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
in table 'Variables': Setting variable
'${xxxxxxxxxxxxxxx} ${EMPTY}' failed: Invalid variable
name '${xxxxxxxxxxxxxxxx} ${EMPTY}'.</msg>
<msg timestamp="20131104 15:38:15.964" level="ERROR">Error in file
'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
in table 'Variables': Setting variable
'${LOCAL_WORK_DIR_PATH} ${EMPTY}' failed: Invalid variable
name '${LOCAL_WORK_DIR_PATH} ${EMPTY}'.</msg>
<msg timestamp="20131104 15:38:16.910" level="ERROR">Error in file
'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
in table 'Setting': Variable file '../conf/env_setup.py' does
not exist.</msg>
</errors>
</robot>
-------------------------
Robot results publisher started... -Parsing output xml: Failed! java.io.IOException: Parsing of output xml failed!
....
...
Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </robot>; expected </doc>. at [row,col {unknown-source}]: [4238,7]
I deleted the robot results directory. The runs are now successful