# tdd-note **Repository Path**: OneJUGE/tdd-note ## Basic Information - **Project Name**: tdd-note - **Description**: 写tdd的一些开源材料收集 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 4 - **Created**: 2024-07-09 - **Last Updated**: 2024-07-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # tdd-note #### 如何在蓝区跑不上板用例linux_unittest 跑linux_unittest的目的是为了避免pr引入问题。 拉完代码之后,带上pr,假设根目录是~/OpenHarmony - 只编译不上板的用例 - ./build.sh --product-name rk3568 --ccache --build-target linux_unittest - cd foundation/arkui/ace_engine/test/unittest/scripts/ - python3 run.py - 然后看 test_result.json - ~/OpenHarmony/out/rk3568/clang_x64/tests/unittest/ace_engine/test_result.json 第一次是在最新代码上面跑的,得到的结果作为baseline,保存。 第二次是带上了自己的pr,重新执行上述步骤,得到第二个结果。 diff对比两次结果。这时候就知道,pr是否导致tdd失败。 **将diff对比的截图贴到PR中** 6.18更新:当前蓝区的TDD已经全部在编译范围内 ### 写tdd的一些开源材料收集 1、如何写tdd https://gitee.com/openharmony/testfwk_developer_test 2、蓝区本地跑tdd覆盖率 文件在./tdd-note/coverage中 参考 https://gitee.com/liyujie43/arkui-developer-test-tool 3、覆盖率 https://blog.csdn.net/cjjmt/article/details/126487676 ### 下载代码 repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify repo sync -c -j24 build/prebuilts_download.sh 第二次编译 ./build.sh --product-name rk3568 --ccache --build-target ace_engine --fast-rebuild 4、反编译 代码根目录下执行 prebuilts/clang/ohos/linux-x86_64/llvm/bin/llvm-addr2line -f -i -C -a -e 测试套名 崩溃栈地址1 崩溃栈地址2 ### 测试单线程内存占用 ./build.sh --product-name rk3568 --ccache --build-target TDDarkui_ace_engine --ninja-args=-j1 ### 编译命令 编译ohos-sdk ./build.sh --product-name ohos-sdk --gn-args full_mini_debug=false --keep-ninja-going --gn-args is_use_check_deps=false 拉代码,首次编译 repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify;repo sync -c -j24;build/prebuilts_download.sh;./build.sh --product-name rk3568 --ccache --build-target ace_engine;./build.sh --product-name rk3568 --ccache --build-target linux_unittest;./build.sh --product-name rk3568 --ccache --build-target ace_engine_test; ### 跑覆盖率 https://gitee.com/liyujie43/arkui-developer-test-tool 安装lcov 修改lcov_branch_coverage = 1 配置config.ini,路径要需要双斜杠 本地python环境安装colorlog、paramiko 服务器执行./build.sh --product-name rk3568 --ccache --build-target select_overlay_test_ng --gn-args use_clang_coverage=true 本地执行 python build.py -b ace_engine_test -f -c ### windows下搭建编译环境 https://gitee.com/kangchongtao/note/blob/master/%E7%BC%96%E8%AF%91%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA.md