metal3-io/baremetal-operator

Split BMO e2e tests into separate spec and test files

lentzi90 opened this issue · 9 comments

This is a bit more advanced. If you are new to go and/or ginkgo it may not be the best to start with.

The e2e tests are currently written as plain tests, each test in its own file. To make the structure clearer and the code reusable, we should split them up so that we have separate (non-test) files with procedure implementations. Each test can then call an implementation with a specific configuration.
For example, we could have one implementation of an upgrade test. This could then be called twice to test upgrades from both v0.4 and v0.5 to main.

What you need to do

  1. Pick a test from here
  2. Identify the relevant input and what the test does
  3. Implement the test separately and create an input struct with all relevant input
  4. Change the original test to call the new implementation

Tasks

/good-first-issue
/triage accepted

@lentzi90:
This request has been marked as suitable for new contributors.

Please ensure the request meets the requirements listed here.

If this request no longer meets these requirements, the label can be removed
by commenting with the /remove-good-first-issue command.

In response to this:

/good-first-issue
/triage accepted

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

Hi @lentzi90
I made some refactor against the upgrade_test, but i m not sure if my changes would align with the expectation consider this is my first PR in this repo, could you please take a preview about #1637 ?

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues will close after an additional 30d of inactivity.

If this issue is safe to close now please do so with /close.

/lifecycle stale

/remove-lifecycle stale

/remove-lifecycle stale

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues will close after an additional 30d of inactivity.

If this issue is safe to close now please do so with /close.

/lifecycle stale

/remove-lifecycle stale

/lifecycle frozen