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

Make tests faster (i.a. using fixtures) #21

Open
dbrakenhoff opened this issue Aug 17, 2021 · 4 comments
Open

Make tests faster (i.a. using fixtures) #21

dbrakenhoff opened this issue Aug 17, 2021 · 4 comments
Assignees
Labels

Comments

@dbrakenhoff
Copy link
Collaborator

hopefully make testing a bit more efficient?

@dbrakenhoff dbrakenhoff added the enhancement New feature or request label Aug 17, 2021
@dbrakenhoff dbrakenhoff mentioned this issue Aug 17, 2021
Closed
5 tasks
@dbrakenhoff dbrakenhoff self-assigned this Oct 27, 2022
@ArtesiaWater ArtesiaWater added this to the Release v0.4.0 milestone Oct 28, 2022
@dbrakenhoff dbrakenhoff removed this from the Release v0.4.0 milestone Nov 2, 2022
@martinvonk
Copy link
Collaborator

I think what would also help is to create a logical pipeline for the tests. This might save time by making the tests more specific, using workflows that are dependent on one another.

https://github.blog/enterprise-software/ci-cd/build-ci-cd-pipeline-github-actions-four-steps/

@martinvonk martinvonk changed the title change tests to use models as fixtures Make tests faster (using fixtures) Nov 6, 2024
@martinvonk martinvonk changed the title Make tests faster (using fixtures) Make tests faster (i.a. using fixtures) Nov 6, 2024
@martinvonk
Copy link
Collaborator

Something like this should work I think:

name: Test Pipeline

on: [push, pull_request]
runs-on: ubuntu-latest

jobs:
  ahn:
    steps:
      - name: ahn
        run: |
          tox -e ahn
  tno:
    steps:
      - name: ahn
        run: |
          tox -e regis
          tox -e geotop

  jarkus:
    steps:
      - name: jarkus
        run: |
          tox -e jarkus

  bgt:
    steps:
      - name: bgt
        run: |
          tox -e bgt

  base_model:
    needs: [ahn, tno, jarkus, bgt]
    steps:
      - name: base_model
        run: |
          tox -e base_model

  grid_refine:
    needs: [base_model]
    steps:
      - name: grid_refine
        run: |
          tox -e grid_refine

  uzf:
    needs: [base_model]
    steps:
      - name: uzf
        run: |
          tox -e uzf

  modpath:
    needs: [base_model]
    steps:
      - name: modpath
        run: |
          tox -e modpath

@dbrakenhoff
Copy link
Collaborator Author

Is data stored between steps when you implement the CI this? I assume so, but I haven't checked. Do you know?

@martinvonk
Copy link
Collaborator

martinvonk commented Nov 7, 2024

Yes. Should be possible.
https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/storing-and-sharing-data-from-a-workflow

@bdestombe bdestombe added this to NHFLO Nov 21, 2024
@github-project-automation github-project-automation bot moved this to Todo in NHFLO Nov 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants