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

(more) automated testing suite #53

Open
dihm opened this issue Jan 28, 2025 · 0 comments
Open

(more) automated testing suite #53

dihm opened this issue Jan 28, 2025 · 0 comments
Labels
enhancement New feature or request

Comments

@dihm
Copy link
Contributor

dihm commented Jan 28, 2025

As an aid to development (and particularly regression testing) it would be very helpful if the test suite covered more functionality and as more automated.

Goal is to expand the current testing.ipynb to cover all modes using internal timing, and to have the notebook automatically configure an attached scope for the correct acquisition parameters, and to pull a screenshot and display the result. This will hopefully make it much easier to see if waveform outputs have changed due to some change somewhere. For now, measurements use a scope for simple amplitude checks and a phase-frequency detector for confirming phase/frequency changes (independent only, not simultaneous changes in both).

Next is to have some minor functionality to confirm that externally triggered sequences also function as expected without needing to invoke labscript. Full testing of externally triggered sequences can be handles by test experiments in labscript.

Finally, it would be good if the whole suite exercised each command of the firmware at least once (ie debug commands, clock config, etc). This part doesn't necessarily need to be explicit, but rather ensure that each command is used at least once and its output confirmed to be as expected in some way (ie string matching, visual inspection of waveforms, etc).

Over-arching goal is for the suite to be fairly modular to allow easy addition of new test sequences (for working on particular edge cases quickly), relatively easy substitution of different equipment (eg suite should be simple to modify to run with a Tektronix scope), and most importantly not consume too much of our time writing it (ie not an exhaustive test suite, nor heroically automated).

@dihm dihm added the enhancement New feature or request label Jan 28, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant