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

Decide on testing strategies #49

Open
webknjaz opened this issue May 7, 2020 · 0 comments
Open

Decide on testing strategies #49

webknjaz opened this issue May 7, 2020 · 0 comments
Assignees
Labels
enhancement New feature or request help wanted Extra attention is needed question Further information is requested

Comments

@webknjaz
Copy link
Member

webknjaz commented May 7, 2020

SUMMARY

We need to decide and document how we do testing.

Right now we have a strong linter suite integrated and running in the CI.
It's mostly enough for its purposes but I should note that some of the checks simply don't support Cython so if we discover good Cython linters we should totally add them into the suite. We have some support for the coverage collection but Cython plugin is currently disabled.

We also have pytest which at the moment does almost nothing. It's a smoke test in its current incarnation, it only checks imports and object construction. Also, 2/3 of the smoke tests are failing on object instantiation.

Besides, we have a few more smoke tests in the form of imports after building dists here and there.

Build/test/lint steps are wrapped with tox to be easier and better reproducible. This is also very helpful when mapping them to CI and making sure that they run there in the same manner as locally.

Now, pytest-based tests need to be specified more clearly. As I see it, we should have unit and integration tests. I think we can cover both types using pure pytest (maybe with plugins). For integration tests, we can use OpenSSH that is usually already pre-installed on the systems that we have interest in supporting.

@ganeshrn also mentioned adding some docker containers for integration tests but I don't have a clear understanding of why we can't test things w/o them. This needs clarification. FWIW it's totally possible to run Docker on Linux workers in GitHub Actions Workflows if really needed.

ISSUE TYPE
  • Feature Idea
@webknjaz webknjaz added enhancement New feature or request help wanted Extra attention is needed question Further information is requested labels May 7, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants