Test a Build#
Omniverse provides tooling and automation making testing easier and more efficient. Use the system’s built-in methods to generate UNIT TESTS for extensions, run automated INTEGRATION TESTS for your applications, and perform PERFORMANCE TESTS to ensure your project runs as efficiently as possible.
Testing Extensions with Python - Kit Manual : Python Testing.
Testing Extensions with C++ - Kit Manual : C++ Testing
Service Testing Tutorial - Unit testing for a viewport capture Service
Asset Validator - OpenUSD Asset Validation
Logging#
Logging, an essential tool for tracking Project activities, offers a detailed, sequential record of events occurring within your Project. This process assists in specifying the performance of your Project.
Kit Manual : Logging - Provides a brief overview of utility functions in Kit so you can create log entries during runtime.
Profiling#
Profiling is an analysis technique used to evaluate the runtime behavior of a software program. It entails gathering data on aspects such as time distribution across code segments, frequency of function usage, number of rendered “frames,” memory allocation, etc. This data serves to identify potential performance bottlenecks, memory leaks, and other factors potentially affecting the efficiency or stability of the program.
The Omniverse Platform provides comprehensive profiling support, enabling the thorough examination of your project’s frame rate, resource usage, stability, among other aspects.
For more information on profiling, refer to the following resources:
OpenUSD Asset Validation#
If you are authoring OpenUSD data, it is a good idea to test and validate your output USD data. You can use the extensions:ext_asset-validator extension which comes with a suite of pre-defined validation rules and you can even create your own rules. The Asset Validator is also vendored in as a part of Connect SDK to use for testing during Connector development.