Table of Contents
01 Overview
User Story 1:
As developers, when implementing new software features, we want to be able to test them right away (as we go).
User Story 2:
As developers, when integrating new features into our software, we want to make sure that we don't break anything in the overall system.
Approaches
Smoke Testing
Taking from electronics: If you turn on a PCB and no smoke can be seen, it probably works.
Unit Testing
Testing individual functions/VIs in the program to give a wide range of inputs and check that the outputs are correct - things like the Unit Test Framework, Caraya, VI Tester etc. can help you with this.
Integration Testing
This involves testing how modules of your program interact with each other - for example testing APIs and communication between VIs.
Regression Testing
Running existing tests after introducing changes to your software, in order to make sure that the existing code base still works as expected.
System Testing
Testing the overall system functionality according to a test plan
End-to-end Testing
Test from the end user’s experience by simulating the real user scenario and validating the system under test and its components for integration and data integrity.
Acceptance Testing
Final demonstration to the customer in order to achieve acceptance of delivery and go for invoicing.