Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add new utility module specifically for QA tests #10089

Closed
npepinpe opened this issue Aug 17, 2022 · 4 comments · Fixed by #10092
Closed

Add new utility module specifically for QA tests #10089

npepinpe opened this issue Aug 17, 2022 · 4 comments · Fixed by #10092
Assignees
Labels
area/test Marks an issue as improving or extending the test coverage of the project kind/toil Categorizes an issue or PR as general maintenance, i.e. cleanup, refactoring, etc. version:8.1.0-alpha5 Marks an issue as being completely or in parts released in 8.1.0-alpha5 version:8.1.0 Marks an issue as being completely or in parts released in 8.1.0

Comments

@npepinpe
Copy link
Member

npepinpe commented Aug 17, 2022

Description

The QA module (and sub-modules) are meant to test the overall project as whole. They pull in most of it as dependencies, but should never be pulled in themselves. This allows us to test the project holistically (can you even say that? 😄).

We currently have a zeebe-test-util module which is in used in various places in the project, including in the QA tests. In there, there are a few utilities which are specifically only used for QA. The downside here is that these QA-specific utilities are included in other sub-modules, and this could eventually introduce cyclical dependencies depending on the kind of utilities we wish to use.

For QA specific utilities, this is limitation is more of a burden than anything. I would propose we create a new module for QA utilities, move any existing ones there (such as QoL extensions to Testcontainers, actuator related utilities, etc.), and we can later expand and add new ones there as well (e.g. helpers when using zeebe-process-test, zeebe-test-container, etc.).

EDIT: It's also not straight-forward to just move them to a QA module, as we have both zeebe-qa-update-tests and zeebe-qa-integration-tests, and the utilities are used in both, and adding a dependency between them wouldn't make much sense (but is possible if we think it's worth avoiding adding a new module).

@npepinpe npepinpe added kind/toil Categorizes an issue or PR as general maintenance, i.e. cleanup, refactoring, etc. area/test Marks an issue as improving or extending the test coverage of the project labels Aug 17, 2022
@npepinpe npepinpe self-assigned this Aug 17, 2022
@Zelldon
Copy link
Member

Zelldon commented Aug 17, 2022

If they are only used in QA why not move them there? Do we need another module right now?

@npepinpe
Copy link
Member Author

npepinpe commented Aug 17, 2022

Because we have two modules in QA, and they are used in both. Sorry if that wasn't clear from the issue, I'll update it 😄

Or did you mean to move them to the parent module, e.g. zeebe-qa? Can sub-modules even import their parent module? 🤔

@Zelldon
Copy link
Member

Zelldon commented Aug 17, 2022

Ok thanks that was not fully clear to me sorry :)

I guess not.

@Zelldon
Copy link
Member

Zelldon commented Aug 17, 2022

So the proposal is to have the following structure?

qa:
\---utils
\---intergration-tests
\---upgrade-tests

If this is the case then count my vote for it :)

@Zelldon Zelldon added the version:8.1.0 Marks an issue as being completely or in parts released in 8.1.0 label Oct 4, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/test Marks an issue as improving or extending the test coverage of the project kind/toil Categorizes an issue or PR as general maintenance, i.e. cleanup, refactoring, etc. version:8.1.0-alpha5 Marks an issue as being completely or in parts released in 8.1.0-alpha5 version:8.1.0 Marks an issue as being completely or in parts released in 8.1.0
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants