SipUnit is a software tool that assists developers in creating automated unit tests for SIP applications with the help of its class library.
SipUnit creates a test program using Java language, acting as a network element that sends and receives SIP requests and responses. The SipUnit API consists of SIP User Agent Client (UAC), User Agent Server (UAS), and basic UAC/UAS Core functionality, which enables the interaction with a test target. The project utilizes the JAIN-SIP reference implementation as its underlying SIP stack/engine.
The primary goal of SipUnit is to simplify the details of SIP messaging/call handling, allowing for free-flowing, sequential test code to quickly and efficiently exercise a test target. A test program using the SipUnit API would extend SipTestCase, create SipUnit API objects such as SipStack, SipPhone, and SipCall, and call methods on the objects to set up and initiate the action towards a SIP test target. The SipUnit API provides assert methods that verify the results of the action involving the test target.
SipUnit comes with a basic set of SIP-specific assert methods, including assertHeaderPresent(), assertHeaderContains(), and assertBodyPresent(). The API further provides a high-level API for interacting with the test target as well as low-level SIP messaging access. SipUnit also supports registration and unregistration, call processing with or without authentication, and different routing configurations.
In the latest release, support for CANCEL handling has been added, along with bugfixes and improvements. Additionally, the underlying JAIN SIP stack has been updated to revision 1.2.72.
Overall, SipUnit is an excellent tool for those looking to test SIP applications efficiently and accurately, with its straightforward approach to messaging/call handling, high-level API, and extensive assert methods.
Version 1.0.0: N/A