Online Course

GTest Framework for ROS2

Understand the GTest (Google Test) framework and how to integrate it with ROS2

Course Overview

In this course, we will talk about GTest basics and how you can use GTest to test robotics applications built on ROS2

 

What You Will Learn

N

Basics of CMake with focus on creating shared libraries

N

How to integrate GTest into a C++ project built using CMake

N

Create unit tests with GTest to verify the behavior of the library

N

Test assertions and available assertion types

N

ROS2 node testing for publishers and subscribers

N

Setting up a testing package for system tests with ROS2

N

Configuring systems tests from CMake scripts

N

Running full-system tests from within current ROS2 build tools

N

As course project you will write tests that cover a ROS2 package

100% Online

No ROS setup is required. Everything is online.

Intermediate Level

}

Approx. 8 hours to complete

i

Simulated Robot Used

Neobotix MP-400 Simulation

The MP-400 can be used in more ambitious applications as an autonomous carrier of special equipment or as an experimental system in robotics research, the MP-400 masters almost all tasks, also with full ROS support.

Course Final Hands-on Project

You will practice by applying the knowledge and skills you have learned in this course in a final project. Your goal will be to validate that the software code provided performs as expected.

 

Syllabus

Unit 1: Course Introduction

In this course, we will talk about GTest basics and how you can use it for testing robotics applications built on ROS2.

Before we address what GTest is and how it works, let us start by clarifying what software testing is and why it is important in robotics.

Unit 2: Unit Testing with Google Test

In this unit, you will learn

  • CMake basics
  • How to use the GTest framework
  • How to test basic assertions
Unit 3: Test Subscribers and Publishers using Google Test
  • Create a subscriber/publisher node to be tested
  • Test the testing process by adding a dummy test to your package
  • Create the support code to run the test
  • Add the node that needs to be tested
Unit 4: Full-System and Sub-System Tests

In this unit, you’ll learn: 

  • Create a system test that validates a complete and fully integrated ROS2 application.
  • Run and observe system tests running locally.
Unit 5: Final Project

In the final project, You will practice by applying the knowledge and skills you have learned in this course in a final project. Your goal will be to validate that the software code provided performs as expected.

What our students think

I am wholeheartedly grateful for this outstanding opportunity. I wouldn’t have found a better ROS beginner-friendly course elsewhere. Thanks, ConstructSim !

Francois Gonothi Toure

I have tried to start learning ROS before and that was so difficult because I didn’t understand how to start, now with these introductory courses I am very excited because I can finally start to enter this world.

Daniel Martínez

“I really enjoy the practical aspect and learning by doing. I feel like I learn way faster and with a rich understanding.”

Jose Dos Santos

Course creator

Roberto Zegers

Robotic Software Engineer @ The Construct / Creator of ROS courses / Instructor for the ROS2 live training program

Related courses

Discover more Robotics Courses

Top universities choose The Construct for Campus to teach ROS & Robotics.

Start Learning Now.

RESULTS GUARANTEED

Pin It on Pinterest