The profile approach is doable. Just a couple of thoughts to add:
- Real unit tests are whitebox-only. If we are using any type of DB,
that's grey box or black box testing.
- The majority of our "unit tests" are actually grey box integration
tests.
- Using docker to spin up a database once before running tests, and shut
it down once after running the tests, won't significantly slow the testing.
So we may not need to change how those tests are executed by CI. I'd love
to see our integration tests move to pure black-box tests.
Art
On Thu, Sep 25, 2025 at 7:46 AM Matt Pavlovich <[email protected]> wrote:
> The docker-based integration tests could be added using a different maven
> profile (ie -Pintegration-tests) and we can configure CI to only run that
> profile weekly to keep the unit test execution time manageable.
>
> -Matt
>
> > On Sep 25, 2025, at 1:28 AM, Francois Papon <
> [email protected]> wrote:
> >
> > Hi,
> >
> > For using both testcontainer and H2 I would prefer to use H2 if possible
> because testcontainer can slow down the build/test and it's not always
> available on CI runners because as runners can be a docker, running a
> docker in a docker can be blocked for security reason.
> >
> > regards,
> >
> > François
> > [email protected]
> > [email protected]
> >
> > Le 25/09/2025 à 06:54, Jean-Baptiste Onofré a écrit :
> >> Hi
> >>
> >> Thanks for your message Clebert.
> >>
> >> We are not in the rush but worth to explore the alternatives.
> >>
> >> I think we have two options (for both Artemis and Classic):
> >> 1. Find another file db like h2
> >> 2. Use test containers
> >>
> >> My preference is for 2 as the tests should be more accurate using a
> “real”
> >> database.
> >>
> >> But again, we have time to prepare this change: even if the project is
> >> retired, the artifacts are still there (it means that we won’t have new
> >> versions and maintenance but it gives us time).
> >>
> >> Regards
> >> JB
> >>
> >> Le mer. 24 sept. 2025 à 21:03, Clebert Suconic <
> [email protected]>
> >> a écrit :
> >>
> >>> I saw a discussion today about Derby retiring...
> >>>
> >>> We still use it as part of our testsuites, both on ActiveMQ "Classic"
> >>> and "Artemis"...
> >>>
> >>>
> >>> I wonder what should we do about this? Should we let it retire, should
> >>> we still use it as read-only (as its a good tool for testing), or
> >>> should we ask them to keep it alive?
> >>>
> >>>
> >>> If we let it retire, what would we replace it with?
> >>>
> >>> --
> >>> Clebert Suconic
> >>>
> >>> ---------------------------------------------------------------------
> >>> To unsubscribe, e-mail: [email protected]
> >>> For additional commands, e-mail: [email protected]
> >>> For further information, visit: https://activemq.apache.org/contact
> >>>
> >>>
> >>>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [email protected]
> > For additional commands, e-mail: [email protected]
> > For further information, visit: https://activemq.apache.org/contact
> >
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
> For further information, visit: https://activemq.apache.org/contact
>
>
>