Unit Testing Intro

Next Offering August 26 1-4pm MT

Why?

We want to bring the benefits of Unit Testing to the LabVIEW masses. Every developer deserves to have the confidence of knowing that the code they wrote does what they intended. They also deserve the ability to make changes to one part of their code without worrying about breaking something else. Unit Testing gives us that and much more.

Most programming languages view Unit Testing as an integral component to software development. We think the LabVIEW Community should do the same. The key to that is introducing developers to the concept of unit testing as early as possible. NI training does not mention Unit Testing until the more advanced courses, so we want to fill that gap.

What?

This workshop is a 3-hour workshop presented over Zoom. The goal is to present Unit Testing to LabVIEW beginners and make it more accessible. We use a very basic LabVIEW Unit Testing Framework that requires no special skill beyond LabVIEW Core 1. We also teach a very simple yet powerful technique called the Humble Object to help test hard to test and legacy code. There are 2 exercises on writing unit tests and 1 exercise on refactoring hard to test legacy code into testable chunks to help you get some hands-on practice.

What is the difference between this and the full workshop?

IntroFull Workshop
Target AudienceLabVIEW Beginners or anyone not using UnitTestingCLD/CLA level programmers who may or may not be currently writing unit tests.
Skills RequiredBasic LabVIEW Core 1 knowledgeBasic OOP knowledge
Tool Used*AST TesterJKI VI Tester
What do you learn?The Importance of Unit Testing
How to write basic unit tests.
How to approach testing hard to test and legacy code..
Same as Intro
PLUS
Maintaining tests
OOP design for testability
Test Doubles
Mock Objects
How to test AF/DQMH modules
Dealing with timing functions
Calling tests programmatically
Introduction to Continuous Integration
Test Driven Development
Refactoring
Hands-on Exercises38
Duration3 hours16 hours
Price$300$1600
*The techniques learned are framework agnostic and can be applied to any framework. Those are just the frameworks we choose to use in the workshop for the examples and exercises.