IAR 프로젝트에서 테스트 프레임을 사용하고 싶습니다. 프로세서는 STM32L0입니다.IAR을 사용하는 STM32L0x3 대상 유닛 테스트
나는 시도했다 : & 8K RAM
과 그뿐만 아니라 64K 플래시가 있기 때문에 작동하지 않았나요 https://cpputest.github.io/stories.html :
https://github.com/cpputest/cpputest는에 turoial를 따라 이 프레임 워크에 충분하다.
https://github.com/ThrowTheSwitch/Unity.git IAR Embedded Workbench로 옮겨 봤지만 많은 컴파일러 오류가있어 공간이 부족하여 데스크톱에서 실행하려고했습니다. 이것은 코드에 너무 많은 하드웨어 종속성이 있기 때문에 작동하지 않습니다.
다음으로 켜기/끄기가 가능한 장치 부팅시 테스트 루틴을 넣어 "Pseudo"단위 테스트를 시도했습니다 프리 컴파일러 지시어에 의해. 파일과
#if PREFORM_TESTS TEST_run(); #endif
: 그리고이 (안 완료)처럼
#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);
}
어떻게 내 STM32L0x3에 단위 테스트를 실행할 수 있습니까?
IAR EWARM에는 ARM 시뮬레이터가 있습니다. 일부 CSPY 매크로 및 중단 점과 결합하여 하드웨어를 더 시뮬레이션하고 단위 테스트를 구현할 수 있습니다. CSPY 매크로에서 C 함수를 호출 할 수있는 방법이 있다고 생각되지만 실수가있을 수 있습니다 (매뉴얼이없는 경우). – rjp