You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by GitBox <gi...@apache.org> on 2021/02/23 11:26:50 UTC
[GitHub] [pulsar] lhotari edited a comment on pull request #9672: [Testing] Improve integration test base classes
lhotari edited a comment on pull request #9672:
URL: https://github.com/apache/pulsar/pull/9672#issuecomment-784122330
@merlimat It seems that the original tests are invalid.
In this case, the TestNG test suite is defined this way in `tests/integration/src/test/resources/pulsar-backwards-compatibility.xml`:
```
<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd" >
<suite name="Pulsar Messaging Backwards Compatibility Tests" verbose="2" annotations="JDK">
<test name="messaging-backwards-compatibility-suite" preserve-order="true">
<classes>
<class name="org.apache.pulsar.tests.integration.backwardscompatibility.SmokeTest2_2" />
<class name="org.apache.pulsar.tests.integration.backwardscompatibility.SmokeTest2_3" />
<class name="org.apache.pulsar.tests.integration.backwardscompatibility.SmokeTest2_4" />
<class name="org.apache.pulsar.tests.integration.backwardscompatibility.SmokeTest2_5" />
<class name="org.apache.pulsar.tests.integration.backwardscompatibility.ClientTest2_2" />
<class name="org.apache.pulsar.tests.integration.backwardscompatibility.ClientTest2_3" />
<class name="org.apache.pulsar.tests.integration.backwardscompatibility.ClientTest2_4" />
<class name="org.apache.pulsar.tests.integration.backwardscompatibility.ClientTest2_5" />
</classes>
</test>
</suite>
```
What happens in the original code (before this PR) is that the containers get initialized for all test classes up-front. Since each test class uses BeforeSuite to start the containers and the container is held in a static field, this results in the last container to be initialized to be used for all test runs.
I verified this behavior locally. Here is the output of `docker ps` when the first test starts executing:
```
❯ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
294c5cf14f6e apachepulsar/pulsar:2.5.0 "bin/pulsar standalo…" 14 seconds ago Up 14 seconds 0.0.0.0:49259->6650/tcp, 0.0.0.0:49258->8080/tcp immhznye-standalone
d83abdf6798b apachepulsar/pulsar:2.4.0 "bin/pulsar standalo…" 24 seconds ago Up 24 seconds 0.0.0.0:49257->6650/tcp, 0.0.0.0:49256->8080/tcp ntjmaswt-standalone
1135a3fdc63a apachepulsar/pulsar:2.3.0 "bin/pulsar standalo…" 34 seconds ago Up 34 seconds 0.0.0.0:49255->6650/tcp, 0.0.0.0:49254->8080/tcp ehkeslmc-standalone
28d87c681157 apachepulsar/pulsar:2.2.0 "bin/pulsar standalo…" 44 seconds ago Up 44 seconds 0.0.0.0:49253->6650/tcp, 0.0.0.0:49252->8080/tcp idpnqdfo-standalone
f0404f5eb71c testcontainers/ryuk:0.3.0 "/app" 45 seconds ago Up 44 seconds 0.0.0.0:49251->8080/tcp testcontainers-ryuk-23a90d7b-ca18-49c7-ace2-f86a719d1311
```
Therefore, I think that deleting the failing test (SmokeTest2_2.testBatchIndexAckDisabled) is the way to resolve this.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org