Je souhaite utiliser un cadre de test dans mon projet IAR. Le processeur est un STM32L0.Test de l'unité cible pour STM32L0x3 en utilisant IAR
Ce que j'ai essayé:
https://github.com/cpputest/cpputest suivi du turoial à: https://cpputest.github.io/stories.html Ça n'a pas marché parce qu'il n'y a que 64K flash & 8K RAM
et son non assez pour ce cadre
https://github.com/ThrowTheSwitch/Unity.git J'ai essayé de m'intégrer dans l'atelier IAR Embedded mais j'ai eu beaucoup d'erreurs de compilation et je n'ai pas assez d'espace. J'ai donc essayé de l'exécuter sur mon bureau. Cela ne fonctionne pas car il y a trop de dépendances matérielles dans le code.
Ensuite, j'ai essayé de faire des tests unitaires "Pseudo" en mettant une routine de test au démarrage de l'appareil qui peut être activée et désactivée par les directives precompiler.
Vous aimez cette (non fini):
#if PREFORM_TESTS
TEST_run();
#endif
Et puis avec les fichiers:
#include "testAll.h"
#include "testEvent.h"
#include "stm32l0xx_hal.h"
void TEST_run(){
TEST_EVENT_run();
}
void assert_failed(uint8_t* file, uint32_t line){
while(1);
}
#include "testEvent.h"
#include "testAll.h"
#include "event.h"
#include "stm32l0xx_hal.h"
void test_add_event();
void TEST_EVENT_run(){
test_add_event();
}
void test_add_event(){
ASSERT(1);
}
Comment puis-je effectuer des tests unitaires sur mon STM32L0x3?
IAR EWARM dispose d'un simulateur ARM. Ceci combiné avec des macros et des points d'arrêt CSPY et vous pouvez simuler davantage le matériel et implémenter des tests unitaires. Je crois qu'ils ont un moyen d'appeler les fonctions C à partir des macros CSPY, mais je peux me tromper (ne pas avoir le manuel à portée de main). – rjp