单元测试的使用问题
Posted: Wed May 11, 2022 2:04 am
我想为我的组件创建单元测试,我跟随的文档为https://docs.espressif.com/projects/esp-idf/zh_CN/v4.4.1/esp32c3/api-guides/unit-tests.html,但是第三步就出错了:
1. 我先切换到tools/unit-test-app目录
2. idf.py menuconfig,这里我没有配置,因为我没有找到单元测试的类似配置
3. idf.py -T all build,这里我执行时就会报错
我这里使用的是ESP32C3,IDF版本为v4.4.1,出现的报错为:
```
-- Adding linker script C:/Espressif/frameworks/esp-idf-v4.4.1/components/esp_rom/esp32c3/ld/esp32c3.rom.eco3.ld
-- Adding linker script C:/Espressif/frameworks/esp-idf-v4.4.1/components/soc/esp32c3/ld/esp32c3.peripherals.ld
not linking coredump test from CI.
not linking libsodium tests, use '-T libsodium' to test it
CMake Error at ../cmake/component.cmake:269 (message):
SRC_DIRS entry 'esp32c3' does not exist.
Call Stack (most recent call first):
../cmake/component.cmake:430 (__component_add_sources)
../../components/ulp/test/CMakeLists.txt:4 (idf_component_register)
-- Configuring incomplete, errors occurred!
See also "C:/Espressif/frameworks/esp-idf-v4.4.1/tools/unit-test-app/build/CMakeFiles/CMakeOutput.log".
cmake failed with exit code 1
```
还有一个问题,一旦我进入这个目录,但我在我的项目中的组件的测试用例在另外一个位置,那么我该如何编译我项目的测试用例呢?
1. 我先切换到tools/unit-test-app目录
2. idf.py menuconfig,这里我没有配置,因为我没有找到单元测试的类似配置
3. idf.py -T all build,这里我执行时就会报错
我这里使用的是ESP32C3,IDF版本为v4.4.1,出现的报错为:
```
-- Adding linker script C:/Espressif/frameworks/esp-idf-v4.4.1/components/esp_rom/esp32c3/ld/esp32c3.rom.eco3.ld
-- Adding linker script C:/Espressif/frameworks/esp-idf-v4.4.1/components/soc/esp32c3/ld/esp32c3.peripherals.ld
not linking coredump test from CI.
not linking libsodium tests, use '-T libsodium' to test it
CMake Error at ../cmake/component.cmake:269 (message):
SRC_DIRS entry 'esp32c3' does not exist.
Call Stack (most recent call first):
../cmake/component.cmake:430 (__component_add_sources)
../../components/ulp/test/CMakeLists.txt:4 (idf_component_register)
-- Configuring incomplete, errors occurred!
See also "C:/Espressif/frameworks/esp-idf-v4.4.1/tools/unit-test-app/build/CMakeFiles/CMakeOutput.log".
cmake failed with exit code 1
```
还有一个问题,一旦我进入这个目录,但我在我的项目中的组件的测试用例在另外一个位置,那么我该如何编译我项目的测试用例呢?