Community
Participate
Working Groups
Created attachment 156412 [details] Sample Plug-in Projects. Test log is missing the first start event. See the following test logs in the attached sample projects: /javaproject/junittestsuite.execution /pluginproj/junitplugintest.execution
Note, this symptom is not reproducible in TPTP 4.6.2.
Note, the symptom is only reproducible in the TPTP JUnit/Plug-in test type. The AGR test type does not suffer from this symptom.
Created attachment 157541 [details] Sample Plug-in Project
Note, this symptom is more severe since the hierarchy in the test log is not created. For example, in /pluginproj/j2.execution the verdict event is referencing the 'j2' test suite and not the 'junitplugintest' test suite.
I have isolated the symptom down to missing test execution events. The runner is emitting the correct events to the agent but they are not received by the XML loader (/org.eclipse.tptp.platform.models/src-test/org/eclipse/hyades/loaders/common/XMLexecutionEventLoader.java and /org.eclipse.tptp.platform.models.hierarchy/src-hierarchy/org/eclipse/hyades/loaders/util/XMLLoader.java). In addition, the problem is with the IAC/AC since using a TPTP 4.6.2 AC resolves the symptom.
The root cause of this symptom is the Agent Controller configured/running the org.junit_4.8.1.v4_8_1_v20100114-1600 JUnit dependency, instead of the org.junit_3.8.2.v20090203-1005 JUnit dependency (packaged with the TPTP 4.7.0 Agent Controller). Work-around: Delete the org.junit_4.8.1.v4_8_1_v20100114-1600 JUnit dependency before configuring the Agent Controller.
Updated org.eclipse.hyades.releng.builder/master/bash/add-dependencies.agntctrl.sh to only include the JUnit 3 dependency for packaging of the Agent Controller.
(In reply to comment #7) > Updated > org.eclipse.hyades.releng.builder/master/bash/add-dependencies.agntctrl.sh to > only include the JUnit 3 dependency for packaging of the Agent Controller. Joel will back out this change since the root cause of this symptom is a casting exception when calling the org.eclipse.hyades.test.common.junit.HyadesTestUtil.getTestListeners(TestResult) method. In JUnit 4.8.x, the junit.framework.TestResult.fListeners property has changed from a Vector to a List, thereby causing the casting exception when resolving the junit.framework.TestResult.fListeners property through introspection (see org.eclipse.hyades.test.common.junit.HyadesTestUtil.getObjectFieldValue(Object, String)). The solution is to add a getter to org.eclipse.hyades.test.common.junit.HyadesTestResult to resolve the junit.framework.TestResult.fListeners property in the super class. In addition, we will deprecate org.eclipse.hyades.test.common.junit.HyadesTestUtil.getObjectFieldValue(Object, String).
(In reply to comment #8) > Joel will back out this change since the root cause of this symptom is a > casting exception when calling the > org.eclipse.hyades.test.common.junit.HyadesTestUtil.getTestListeners(TestResult) > method. Change reverted.
Created attachment 157631 [details] Patch.
Added two new test cases in the following test suites for TPTP JUnit/JUnit Plug-in tests: /org.eclipse.hyades.test.java.tests/manual/regressionTests/Test.Execution.JUnitPluginRunner.testsuite /org.eclipse.hyades.test.java.tests/manual/regressionTests/Test.Execution.JUnitRunner.testsuite
The attached patch checked in to CVS (HEAD).
*** Bug 300258 has been marked as a duplicate of this bug. ***
Verified in TPTP-4.7.0-201002101900 for TPTP JUnit tests. See https://bugs.eclipse.org/bugs/show_bug.cgi?id=302579 for a new issue with the TPTP JUnit Plug-in tests.