Unit Testing Framework Discussion

Lakshay Gupta

Diya Rajon 

Madeleine Lee 

Goal of this meeting: figure out the point of this meeting

The point of this meeting: figure out the point of the meeting


What are we unit testing? How does it help? 

They always ask where are the unit tests, they never ask how are the unit tests.

Less files the better to avoid cross referencing and copying code. 

Options:

Using text file to simulate the inputs and outputs?

Unit testing - one test at a time, so a new folder for testing is needed. 

Trying to avoid ifdefs

Idea setups:

BPS : read from text files, trying to convert to JSON file

Controls: unit testing, Renode, physical integration

  • Renode is good for high level testing
  • is Renode cycle to cycle? it simulates hardware
  • Could we make mocks of the electronics?
    • time sunk
  • Unit testing can be integrated into github actions – to make sure that the one thing we change doesn't fuck everything up


Parallelizing testing

buzzwords: POSIX, benchmarking FreeRTOS, AI, machine learning, blockchain


Items of Action:

  • Contact Clark for unit testing meeting - Lakshay will text 
    • How are unit tests done in industry
    • Unit testing vs integration
    • Low level testing vs making mocks of stuff
    • Simulation versus hardware costs and benefits
      • Inputs/Outputs/general testing integration
      • Benchmarking
  • Figure out unit testing framework: Unity, CMock, FFF - all 3 of us
    • Pros and cons list of each? FFF better b/c lightweight, no ruby downloads
    • Start of August
    • Concrete Plan for unit testing
  • GitHub Actions interactions - "it's not that hard" - Lakshay
  • look at benchmarking (low priority) - joe mama


Cool Links: