CheckPoint 16 Quality Assurance

About The Project

This project is focused on creating and executing tests for the TortoiseBot robot simulation in both ROS1 and ROS2 environments. The primary goal is to develop a robust testing framework (GTest & Unit Tests) to ensure the functionality and reliability of the waypoints action server, allowing the robot to follow predefined paths accurately.

This is an image

Getting Started

Software Prerequisites

  • Ubuntu 22.04
  • ROS2 Galactic
  • ROS Noetic

(back to top)

Installation

  1. Clone the repo:
    cd ~ && \
    git clone https://github.com/pvela2017/The-Construct-CheckPoint-16-Quality-Assurance
  2. Compile the simulation:
    source /opt/ros/galactic/setup.bash && \
    cd ~/The-Construct-CheckPoint-16-Quality-Assurance/ros2_ws && \
    colcon build
    source /opt/ros/noetic/setup.bash && \
    cd ~/The-Construct-CheckPoint-16-Quality-Assurance/simulation_ws && \
    catkin_ws

(back to top)

Usage

Local Simulation

  1. Quality assurance ROS1 test:
    source /opt/ros/noetic/setup.bash && \
    source ~/The-Construct-CheckPoint-16-Quality-Assurance/simulation_ws/devel/setup.bash && \
    rostest tortoisebot_waypoints waypoints_test.test
  2. Quality assurance ROS2 test - Simulation:
    source /opt/ros/galactic/setup.bash && \
    source ~/The-Construct-CheckPoint-16-Quality-Assurance/ros2_ws/install/setup.bash && \
    ros2 launch tortoisebot_bringup bringup.launch.py use_sim_time:=True
  3. Quality assurance ROS2 test - Waypoint:
    source /opt/ros/galactic/setup.bash && \
    source ~/The-Construct-CheckPoint-16-Quality-Assurance/ros2_ws/install/setup.bash && \
    ros2 run tortoisebot_waypoints main
  4. Quality assurance ROS2 test - Test:
    source /opt/ros/galactic/setup.bash && \
    source ~/The-Construct-CheckPoint-16-Quality-Assurance/ros2_ws/install/setup.bash && \
    colcon test --packages-select tortoisebot_waypoints --event-handler=console_direct+

(back to top)

Results

Demo

Key Topics Learnt

  • GTest.
  • Unit Test.