Running tests
Run every test or one, read each result in words in the Tests rail, and jump from a failure to its waveform, its source or the assistant.
Run in the top bar, or ⌘Enter, runs every test. Press it again while tests run to stop them. To run one test, use the play button on its row, double click the row, or pick it in the command bar.
Results in words
Each row in the Tests rail says how its test ended:
- Passed
- Icarus passed it and the netlist simulator agreed on every sample.
- Passed in Icarus only
- Icarus passed it, but the second simulator could not check the run. It is not counted as a pass.
- Failed at 12.3 µs
- The testbench stopped it, with the time and the message. The waveform opens there.
- Failed
- A FAIL line or a non-zero exit, with no time attached.
- Simulators disagree
- The two simulators saw different values. Never shown as a pass.
- Stopped at the time limit
- The run reached the time limit.
- Stopped at the data limit
- The waveform reached the data limit.
- Stopped
- You stopped it.
- Could not run
- The test did not compile or could not start. The reason is under its row.
Hover a row for the message, how long it took, and how many unknown values it found. After an edit, results stay but dim, because they ran against the code before it.
After a failure
- The waveform dock opens on the failing test at the failing time. Turn this off under Engines in the Inspector.
- Below the tests, Find out why asks the assistant, and Show jumps the waveform to the failure.
- Right click a test to run it, show its waveform, open its source, or copy its name.
Limits
One test may run for 60 s and write 256 MB of waveform. A test that reaches either limit is stopped and says which, and the waveform keeps every time step it finished.
With more than four tests, a filter appears at the top of the rail: by name or file, and by All, Failed or Not run.