Bug #7608
Features supporting regression testing
100%
History
#1 Updated by Tomasz Domin about 3 years ago
- % Done changed from 0 to 90
- File harness_20230721.diff
added - Status changed from New to Feedback
During development of regression testing I've made changes to harness to support process of debugging, tracing and stabilization.
- Restarting of Driver threads on failure - in case Driver thread fails completely it is restarted, so a total number of threads is kept as defined in master test plan
- Terminate thread when in backout fails to prevent further failures - so failing backout threads do not accumulate, depends on Restarting of Driver threads on failure
- Timeout multiplier - allows changing all timeouts in all tests in given tests scenario (
-g 2.0) - Trace mode - increase logging verbosity to track connection and terminal issues (
-d -d) - Tests white list - allows selecting tests to be executed out of entire tests scenario (
-f test1,test2, in combination with already implemented black lists it can cover #1553 - IN_PROGRESS test status - solely for reporting purposes
- Reduce screen poll delay/increase screen poll frequency - the poll timeout is reduced from 500ms to 100ms, so
harnessdo not miss any screen changes anymore - Limit maximum number of allowed parallel TestSets (
-q 1) - allows executing TestSet in sequence despite master test scenario they are in parallel
Attached please find a patch harness_20230721.diff with all code changes.
Please review.
#2 Updated by Greg Shah about 3 years ago
Code Review harness_20230721.diff
The changes are very good. I only have code standards issues to report:cat
1. isIgnored() needs javadoc (BarrierElement, ConcurrentElements
2. JobQueue.isEmpty() needs javadoc.
3. Please un-indent (de-dent? outdent?) the case "g": on line 597 of Harness.java so that it can be more easily read.
4. Driver, Harness, TestSet, ScreenPoller, LogHelper should only have one history number each (though the multiple entries can remain).
5. In TestPlanFactory, the outputDirectory.trim().length()>0 should be written outputDirectory.trim().length() > 0.
#3 Updated by Tomasz Domin almost 3 years ago
- Subject changed from Features suppporting regression testing to Features supporting regression testing
Greg Shah wrote:
Code Review harness_20230721.diff
The changes are very good. I only have code standards issues to report:cat
1.
isIgnored()needs javadoc (BarrierElement,ConcurrentElements
Done
2.
JobQueue.isEmpty()needs javadoc.
Done
3. Please un-indent (
de-dent?outdent?) thecase "g":on line 597 ofHarness.javaso that it can be more easily read.
Done
4.
Driver,Harness,TestSet,ScreenPoller,LogHelpershould only have one history number each (though the multiple entries can remain).
Done
5. In
TestPlanFactory, theoutputDirectory.trim().length()>0should be writtenoutputDirectory.trim().length() > 0.
Done
Committed revision 30.
#4 Updated by Greg Shah almost 3 years ago
Code Review Harness Revision 30
The changes are good.
#5 Updated by Greg Shah almost 3 years ago
Please update the Documentation to match the changes.
#6 Updated by Greg Shah almost 3 years ago
I've updated the public release with rev 30.
Is there anything else for this task other than documentation?
#7 Updated by Tomasz Domin almost 3 years ago
Greg Shah wrote:
I've updated the public release with rev 30.
Is there anything else for this task other than documentation?
No, but the documentation is still pending.
#8 Updated by Roger Borrello almost 3 years ago
Tomasz... was there a change in revision 30 that would bring on this error:
2023-09-29 15:02:57 INFO Harness Enable debug mode
2023-09-29 15:02:57 INFO Harness Start
[Fatal Error] :6:38: Element type "exclude" must be followed by either attribute specifications, ">" or "/>".
Cannot load file (bad content).
org.xml.sax.SAXParseException: Element type "exclude" must be followed by either attribute specifications, ">" or "/>".
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:257)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:338)
at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:121)
at com.goldencode.harness.XmlHelper.loadDocument(XmlHelper.java:79)
at com.goldencode.harness.test.TestFactory.read(TestFactory.java:79)
at com.goldencode.harness.TestPlanFactory.loadDuplicates(TestPlanFactory.java:1079)
at com.goldencode.harness.TestPlanFactory.processTests(TestPlanFactory.java:840)
at com.goldencode.harness.TestPlanFactory.processTestSets(TestPlanFactory.java:500)
at com.goldencode.harness.TestPlanFactory.loadTestSets(TestPlanFactory.java:229)
at com.goldencode.harness.TestPlanFactory.read(TestPlanFactory.java:78)
at com.goldencode.harness.Harness.main(Harness.java:750)
For this code:
<?xml version="1.0"?>
<test name="sslsv9-1 " description="CRM activity report" >
<!-- compare the reports -->
<text-file-comparison baseline="sl/sslsv9-1" remote="/usr/report_testing/reports/sl/sslsv9-1">
<exclude type="each-page" row="62" start="11" end="20" ignore-size="true" />
<exclude type="each-page" row="62" start="24" end="29" ignore-size="true" />
<exclude type="each-page" row="62" start="33" end="41" ignore-size="true" />
<exclude type="each-page" row="" start="20" end="34" ignore-size="true" />
</text-file-comparison>
</test>
#9 Updated by Tomasz Domin almost 3 years ago
Roger Borrello wrote:
Tomasz... was there a change in revision 30 that would bring on this error:
[...]
For this code:
[...]
There was no changes to script syntax.
There are several tests like:
<text-file-comparison baseline="gso_67.out" remote="gso_67.out">
<exclude type="each-page" row="0" start="113" end="132" />
<exclude type="each-page" row="6" start="10" end="132" ignore-size="true" />
</text-file-comparison>
EDIT: There are no tests having
row=""EDIT:
remote mandatory ?#10 Updated by Roger Borrello almost 3 years ago
Tomasz Domin wrote:
EDIT: There are no tests having
row=""
Hmm... let me check this out. These tests were generated by the customer, and I am not sure if I ever ran these versions.
#12 Updated by Tomasz Domin 5 months ago
- Status changed from WIP to Review
Most of changes were already there, just added few more descriptions.