单元测试的使用问题

wangshuoran
Posts: 37
Joined: Fri Dec 24, 2021 12:40 pm

单元测试的使用问题

Postby wangshuoran » 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
```

还有一个问题,一旦我进入这个目录,但我在我的项目中的组件的测试用例在另外一个位置,那么我该如何编译我项目的测试用例呢?

ESP_morris
Posts: 290
Joined: Wed Sep 05, 2018 6:23 am

Re: 单元测试的使用问题

Postby ESP_morris » Tue May 17, 2022 10:17 am

应该可以在这里添加你自己的component
https://github.com/espressif/esp-idf/bl ... sts.txt#L5

wangshuoran
Posts: 37
Joined: Fri Dec 24, 2021 12:40 pm

Re: 单元测试的使用问题

Postby wangshuoran » Sat May 21, 2022 6:58 am

感谢 ESP_morris 的回复,那么你的意思是,我在这个例程中引入我自己项目的组件,就可以进行测试了,是吗?
那么请问我有在CMake中看到主项目main也是一个组件,那么,主项目main这个组件的引入路径是怎么样的呢?

FengXinan
Posts: 14
Joined: Tue Mar 01, 2022 2:21 am

Re: 单元测试的使用问题

Postby FengXinan » Sat Apr 01, 2023 10:03 am

  1. 当我使用单元测试 编译命令 idf.py -T all 时, 会报错No such option: -T, 这是什么原因呢?

Who is online

Users browsing this forum: No registered users and 50 guests