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

Investigate using ctest to run system tests #34850

Open
thomashampson opened this issue Dec 14, 2022 · 5 comments · May be fixed by #38381
Open

Investigate using ctest to run system tests #34850

thomashampson opened this issue Dec 14, 2022 · 5 comments · May be fixed by #38381
Assignees
Labels
DevOps Issues and pull requests related to DevOps Investigation A task to investigate options for future work Maintenance Unassigned issues to be addressed in the next maintenance period. Technical Debt Marks a piece of work to address technical debt introduced to solve a problem quickly

Comments

@thomashampson
Copy link
Contributor

Describe the outcome that is desired.
Currently we have our own system test running scripts, but there would be benefits to running them using ctest instead.

Describe any solutions you are considering
Use pytest (https://docs.pytest.org/en/7.2.x/) for test discovery and then have cmake drive it and register the tests as ctests that are run with ctest.

@thomashampson thomashampson added Maintenance Unassigned issues to be addressed in the next maintenance period. Investigation A task to investigate options for future work Technical Debt Marks a piece of work to address technical debt introduced to solve a problem quickly labels Dec 14, 2022
@DonaldChung-HK
Copy link
Contributor

Currently, the system tests are executed in a separate binary.

The branch attached to this issue shows how to add system tests to ctest. However, this still rely on the systemtest binary and testruner python script to execute the tests.

In a long run, we might want to rewrite the tests to be executed using ctest so that they can take advantage of the unit test monitoring dashboard.

Proposed solution

  1. Rewrite the tests into pytest format so that the test can be executed using pytest. Currently, the tests inherit the unittest class but are not written in a way that can be executed by pytest
  2. Install the custom libraries for system tests during the build process. There are a few custom libraries that need to be installed in order for the system test to execute.
  3. Add a step in the jenkins build step to pull the test data from the remote source.

@stale
Copy link

stale bot commented Jun 14, 2023

This issue has been automatically marked as stale because it has not had activity in 6 months. It will be closed in 7 days if no further activity occurs.
Allowing issues to close as stale helps us filter out issues which can wait for future development time. All issues closed by stale bot act like normal issues; they can be searched for, commented on or reopened at any point.
If you'd like a closed stale issue to be considered, feel free to either re-open the issue directly or contact a developer.
To extend the lifetime of an issue please comment below, it helps us see that this is still affecting you and you want it fixed in the near-future. Extending the lifetime of an issue may cause the development team to prioritise it over other issues, which may be closed as stale instead.

@stale stale bot added the Stale This label is automatically applied to issues that are automatically closed by the stale bot label Jun 14, 2023
@stale
Copy link

stale bot commented Jul 1, 2023

This issue has been closed automatically. If this still affects you please re-open this issue with a comment or contact us so we can look into resolving it.

@thomashampson
Copy link
Contributor Author

@cailafinn here is the issue I was talking about

@jclarkeSTFC
Copy link
Contributor

pytest can discover and run unittest tests, we experimented with this at the recent developer meeting, so the first point from the proposed solution above is not needed.

@github-actions github-actions bot removed the Stale This label is automatically applied to issues that are automatically closed by the stale bot label Oct 17, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 8, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 8, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 8, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 11, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 11, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 11, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 11, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 11, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 11, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 11, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 11, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Nov 25, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Dec 2, 2024
cailafinn added a commit to cailafinn/mantid that referenced this issue Dec 2, 2024
@cailafinn cailafinn linked a pull request Dec 5, 2024 that will close this issue
@sf1919 sf1919 added the DevOps Issues and pull requests related to DevOps label Jan 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
DevOps Issues and pull requests related to DevOps Investigation A task to investigate options for future work Maintenance Unassigned issues to be addressed in the next maintenance period. Technical Debt Marks a piece of work to address technical debt introduced to solve a problem quickly
Projects
No open projects
Status: Done
Status: Done
Development

Successfully merging a pull request may close this issue.

5 participants