Top > Engineering Services > Embedded Software Unit Test Services
As part of GAIO unit testing services, we create test cases from customer’s software design documents or source code, and then perform unit testing using GAIO’s own professional unit test tool, CoverageMaster winAMS. Thorough documentation regarding unit test design, results and errors encountered will be presented to the customer. In addition, we can also asses the target software quality and make improvement suggestion by request.
After signing NDA documents, GAIO will analyze the customer’s source code and provide an estimation for unit test costs and delivery date. Once the customer gives us the okay to begin, we will perform the unit testing for customer’s embedded software. When completed, we will send to the customer the unit test documentation and results including the test environment files that were used.
Conflicts between function specification and source code
Dead code (example :control paths with conditions that will not be achieved)
Infinite loop
Division by Zero
NULL pointer access
Overflow, underflow
Array overrun, illegal access
Uninitialized local variable
Compiler error
C code implementation error (example: implicit cast, wrong data type)
Errors caused by recursive function calls
Illegal memory access (example: data write to read only memory)
The unit test cost and delivery date will be estimated based on function complexity as reported from source code analysis. GAIO will perform the source code analysis if source code can be sent under NDA agreements. Otherwise, our estimations will be based on source code analysis results from CasePlayer2 performed by the customer.
Unit Test Design Specification Documents and Test Cases
Explanation of unit test guidelines and intention of each test case
Clarify of coverage guidelines (Statement, Branch and MC/DC)
Show execution path of each test case by flowchart
Easily understandable test repot
Function Test Report
Unit test report (output results compared with expected values)
Coverage report
Error Detection Report
Test case, output data and execution path for detecting errors
(example: when output results don’t match expected values)