Wie setze ich ein Mock Object in einem Unit Test in Embedded C ein?

Beispiel für ein Mock Object in C:

// Originalfunktion
int read_sensor_value(void);

// Mockfunktion
int mock_read_sensor_value(void) {
    return 42; // Fester Testwert
}

// Im Test
extern int (*read_sensor_value_ptr)(void);

void test_sensor_logic(void) {
    read_sensor_value_ptr = mock_read_sensor_value;
    int result = calculate_temperature();
    TEST_ASSERT_EQUAL(42, result);
}

In diesem Beispiel wird eine echte Hardware-Funktion durch eine Mock-Implementierung ersetzt – ideal für Tests ohne echte Sensoren.

com

Newsletter Anmeldung

Bleiben Sie informiert! Wir informieren Sie über alle neuen Beiträge (max. 1 Mail pro Woche – versprochen)