L
Lars Asplund
Guest
Hi,
VUnit, an unit testing framework for VHDL, is now freely available on github (https://github.com/LarsAsplund/vunit). It is released under the business-friendly Mozilla Public License, v. 2.0 and features the functionality needed to realize continuous and automated testing of your VHDL code. VUnit doesn't replace but rather complements traditional testing methodologies by supporting a "test early and often" approach through automation.
A quick 6 minute introduction to unit testing can be found at https://www.youtube.com/watch?v=PZuBqcxS8t4 and a short (12 min) introduction to VUnit can be found at https://www.youtube.com/watch?v=D8s_VLD91tw.
Some of the VUnit highlights are
- Python test runner that enables powerful test administration, can handle VHDL fatal run-time errors (e.g. division by zero), and ensures test case independence.
- Scanners for identifying files, tests, file dependencies, and file changes enable for automatic (re)compilation and execution of test suites.
- Scripting as well as command line support.
- Support for running same test suite with different generics.
- VHDL test runner which enables test execution for not fully supported simulators. We currently have full support for ModelSim but Aldec support is coming soon.
- Assertion checker library that extends VHDL built-in support (assert).
- Logging framework supporting display and file output, different log levels, filtering on level and design hierarchy, output formatting and multiple loggers. Spreadsheet tool integration.
- Location preprocessor that traces log and check calls back to file and line number.
- JUnit report files for better Jenkins integration.
We are an active and responsive community but want to grow to benefit further development. You can participate by adding questions on Github, suggesting enhancement, reporting bugs, and contributing code. If you like what you see click "star" and if you want to get notified of the progress you should click "follow".
Regards,
Lars Asplund
VUnit, an unit testing framework for VHDL, is now freely available on github (https://github.com/LarsAsplund/vunit). It is released under the business-friendly Mozilla Public License, v. 2.0 and features the functionality needed to realize continuous and automated testing of your VHDL code. VUnit doesn't replace but rather complements traditional testing methodologies by supporting a "test early and often" approach through automation.
A quick 6 minute introduction to unit testing can be found at https://www.youtube.com/watch?v=PZuBqcxS8t4 and a short (12 min) introduction to VUnit can be found at https://www.youtube.com/watch?v=D8s_VLD91tw.
Some of the VUnit highlights are
- Python test runner that enables powerful test administration, can handle VHDL fatal run-time errors (e.g. division by zero), and ensures test case independence.
- Scanners for identifying files, tests, file dependencies, and file changes enable for automatic (re)compilation and execution of test suites.
- Scripting as well as command line support.
- Support for running same test suite with different generics.
- VHDL test runner which enables test execution for not fully supported simulators. We currently have full support for ModelSim but Aldec support is coming soon.
- Assertion checker library that extends VHDL built-in support (assert).
- Logging framework supporting display and file output, different log levels, filtering on level and design hierarchy, output formatting and multiple loggers. Spreadsheet tool integration.
- Location preprocessor that traces log and check calls back to file and line number.
- JUnit report files for better Jenkins integration.
We are an active and responsive community but want to grow to benefit further development. You can participate by adding questions on Github, suggesting enhancement, reporting bugs, and contributing code. If you like what you see click "star" and if you want to get notified of the progress you should click "follow".
Regards,
Lars Asplund