Unit Testing and Integration Testing

Automated unit testing and Integration testing for C and C++ applications

RTTracer is an integration and unit testing tool that enables developers to verify their code on host machines and embedded platforms using a compliant standard.

By automating the following tasks, RKTracer can help accelerate compliance with the standard’s dynamic testing requirements.

  • Unit tests generation
  • Code coverage reports generation

RKTracer can be fully integrated with an extensive set of Embedded Integrated Development Environment (IDEs) and command line interface tools to build and manage systems and requirements. The RKTracer tool allows your application to be tested with your existing development and testing environments.

Capabilities of the RKTracer

  • You can integrate the RKTracer automation tool into your existing development or testing environments.
  • Generates unit test cases for applications written in C and C++, such as games, GUIs, Android apps, device drivers and embedded systems.
  • Generate code coverage metrics for unit tests and integration tests on a host or embedded target.
  • Generate code coverage for mutation testing.

Advantages

  • C and C++ support for C89, C90, C95, C99, C11, C17, C++98, C++03, C++11, C++14, C++17, C++20.
  • Supports Windows, Linux and Mac OS platforms.
  • Supports all compilers, cross-compilers, simulators and embedded systems architectures.
  • Comes with a plugin for IDEs, Continuous integration.
  • Supports testing on host, simulator, emulator and embedded targets.
  • Generates reports in HTML,XML and many more.
  • Supports Command line integration.
  • Support for Jenkins, Azure Devops and SonarQube

Integrates with existing developmental or build environments IDEs or CMD.

As one needs to just enable or prefix rktracer to build the system

Automatically detects and adds runtime library for cross-platform embedded systems

Automatic test generation unity framework or google test framework or of your choice.

Full control over how you run unit tests

  • Function Coverage,
  • Line Coverage: In Depth coverage analysis with covered(green), partial(yellow) and uncovered(red)
  • Statement Coverage, 
  • Decision Coverage, 
  • Condition Coverage, 
  • MC/DC Coverage 
  • Multiple Condition Coverage.
  • Mutation Coverage and Coverage for refactored codes.
  • Supports Agile and Test Driven Development.

Why RKTracer for C and C++ Unit Testing and Integration testing?

Integrations

The RKTracer tool is easy to use and seamlessly integrates with your existing development and build toolchains for your software projects. You can work with common development environments such as Visual Studio, IAR embedded workbench IDE, Eclipse IDE, TI CCS, Keil uVision and many more, using workflows that are already established. 

Furthermore, your test projects can be executed on multiple platforms. Thus, you can use the RKTracer tool for both host-based development testing and testing in the final embedded hardware environment. As a result, you are able to test your software in real world situations, which ensures the best possible functionality.

Auto unit test cases generation

It can be time consuming and inefficient to write unit tests manually using a test framework, since developers and testers must write and debug both the test code and the application code. 

The RKTracer tool automatically generates unit test cases using Google Test framework and Unity framework, which are widely used in various fields. Stubs and mocks can also be used to isolate and test the typical functions, or to combine them with other functions and run as integration tests. 

All this is done without having to write a single line of test code, leaving more time for building comprehensive test cases, debugging, and finalizing the code. It’s just as easy to generate unit tests by prefixing the rktracer to the build command.

Run unit tests and integration tests

Once unit tests are generated in project director you can add/integrate unit tests cases generated by RKTracer to your existing development environment and run unit tests independent of rktracer tool.

Debugging issue with test case

RKTracer will integrate with your existing integrated development environment (IDE) or command line interface. In order to debug the issue, you can utilize your existing build environment and test environment. 

Therefore, you spend less time learning vendor software tools and more time debugging the problem in your existing build/test environment.

Code Coverage Report

It is difficult to determine how much of your source code has been exercised without a code coverage tool. The RKTracer tool provides a code coverage utility that enables you to assess the effectiveness of your component testing by reporting the source code lines , statements , decisions , multi condition points that have been tested during an individual or series of unit tests cases.

A code coverage report can also be merged from unit testing, integration testing, functional testing, and system testing. Since RKTracer can also generate code coverage for existing unit test cases with any unit testing framework, such as GoogleTest, a complete view of code coverage across all phases of testing is provided. 

An aggregated coverage of code can provide actionable insight concerning where testing efforts should be focused. The method is particularly useful when code coverage data is generated for legacy code that does not have unit or functional tests.

Don’t take our word for it. Try the RKTracer tool for a 30-day free trial?

Do you have Questions? Email us @ info@rkvalidate.com or call us +91-8971088344