Skip to content

Use dev services by default in Quarkus' own integration testsΒ #44124

@yrodiere

Description

@yrodiere

Description

Test modules in integration-tests rely on dedicated Maven configuration to start containers of services used in tests.

Could we not just rely on dev services for most of them?

One benefit would be additional testing of dev services in scenarios that are as close as possible to the "real world" -- as opposed to most dev service tests we have right now, which rely on QuarkusDevModeTest -- which, as great as it is, is still a simulated setup.

Another benefit in our own dev environments would be that a test failure in surefire wouldn't leave the containers running, forcing us to manually kill them before restarting the tests (I swear I had to do this many times).

A downside could be performance, as we would start the containers twice per integration test module (once for surefire tests, once for failsafe tests) instead of once. That can be worked around on CI by enabling container reuse, though then cleanup mid-build will be challenging.

Related: #43980. Which could, perhaps, have been caught if we used dev services in our integration tests. But I think the points above stand even if it's a bad example.

Implementation ideas

No response

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions