Skip to main content

Table 5 An example test case showing the unit test of the CRC generation function

From: Development and validation of a safe communication protocol compliant to railway standards

Test case ID

crc_ch1

Priority

Medium

Description

CRC generation function

Module

Safety layer

Prepared by

 

Date prepared

 

Reviewed/updated

 

Date reviewed

 

Tested by

 

Date tested

 

Software version

   

Test activities

Sl. no.

Step description

Expected results

 1

Definition of the input data

 

 2

if the input data are plausibles:

 • Computation of the CRC using an external tool and comparation with the result obtained using the internal function

otherwise:

 • Verification of the correct error handling and report

The code obtained using the external tool and the internal function must be equals

Test data sets

Data type

Data set 1

Data set 2

Data set 3

 uint8_t input[];

input ={0,0,0,0,0,0,0,0}

input = {0xffff, 0xffff, 0xffff, 0xffff}

input = {‘C’,’o’,’n’,’t’,’r’,’o’,’l’ }

 uint16_t size;

size = 8

size = 4

size = 0

Actual results

   

Data type

Data set 4

Data set 5

Data set 6

 uint8_t input[];

input = NULL

input = {0,0,0,0,0,0,0,0}

 

 uint16_t size;

size=0

size = − 1

Actual results

   

Test case result

 
  1. Data sets 2 and 4 are robustness tests that invoke the function with values bigger than expected (using 16-bit unsigned integers in place of the 8-bit requested) and with NULL parameters