Autonomy Software C++ 24.5.1
Welcome to the Autonomy Software repository of the Mars Rover Design Team (MRDT) at Missouri University of Science and Technology (Missouri S&T)! API reference contains the source code and other resources for the development of the autonomy software for our Mars rover. The Autonomy Software project aims to compete in the University Rover Challenge (URC) by demonstrating advanced autonomous capabilities and robust navigation algorithms.
Loading...
Searching...
No Matches
tests Directory Reference
Directory dependency graph for tests:
external/threadpool/tests

Files

 BS_thread_pool_test.cpp
 BS::thread_pool: a fast, lightweight, and easy-to-use C++17 thread pool library. This program tests all aspects of the library, but is not needed in order to use the library.
 

Detailed Description

Tests Directory

The Tests directory is intended to store C++ files containing test cases and unit tests for the Rover project. This directory focuses on ensuring the correctness and reliability of the code through systematic testing.

Guidelines

The following are the guidelines for organizing files within the Tests directory:

  1. Each C++ file should contain one or more test cases or unit tests for specific functionalities, modules, or components of the Rover project.
  2. Use descriptive names for the files that reflect the purpose or functionality being tested.
  3. Ensure that the test files are properly documented with comments explaining the test cases, their expected outcomes, and any relevant details.
  4. Include a README file in the Tests directory to provide an overview of the testing framework used, instructions for running the tests, and any additional information.

Usage

Here are some common types of files you might find in the Tests directory:

  1. Unit tests: Files that contain individual tests to verify the functionality of specific functions, classes, or modules in the Rover project.
  2. Integration tests: Files that test the integration and interaction between different components or modules of the Rover project.
  3. Functional tests: Files that test the overall functionality and behavior of the Rover project, simulating different scenarios and validating the expected outcomes.
  4. Performance tests: Files that focus on testing the performance and efficiency of the Rover project, evaluating factors like speed, memory usage, or response time.
  5. Edge case tests: Files that cover edge cases and unusual inputs to ensure the robustness and stability of the Rover project.
  6. Regression tests: Files that test previously identified bugs or issues to ensure that they have been successfully fixed and do not reappear in subsequent versions.

Organize the test files in a way that mirrors the structure of the project's codebase, making it easy to locate and execute the relevant tests.

Remember to update this README file whenever new test files are added to the directory, providing a brief summary of each file's purpose and functionality.

Regularly run the tests to identify and address any potential issues or bugs, ensuring the overall quality and reliability of the Rover project.

Happy testing and maintaining code quality!