【问题标题】:Erlang Common Test coverage specification file - Relative pathsErlang 通用测试覆盖规范文件 - 相对路径
【发布时间】:2015-06-04 23:26:44
【问题描述】:

我在我的 erlang 项目中使用 Common Test 进行代码覆盖率分析。

文件结构

myProject/
    ebin/
    src/
    test/
        myProject.coverspec

源代码的 .beam 文件位于 ebin/ 中,对于测试,它们与测试源一起位于 test/ 中。

我目前在 .coverspec 文件中使用 .beam 文件的绝对路径。

myProject.coverspec:

{level,details}.
{incl_dirs, ["/home/user/myProject/ebin", "/home/user/myProject/test"]}.

这可行,但由于项目开发是分布式的,因此远非最佳。

ct_run 是从项目的基础 myProject 调用的,路径似乎与 myProject 无关,而是相对于其他位置。

我已经尝试过与 myProject 和 myProject/test 相关的路径,但均未成功。

我的问题是,myProject.coverspec 中的路径相对于哪里?

【问题讨论】:

    标签: erlang code-coverage common-test


    【解决方案1】:

    在我使用过CTcoverlast Erlang project 中,我的设置如下所示:

    • 项目根目录下的cover.spec:

      {incl_dirs, ["apps/application_manager/ebin", "apps/session_counter/ebin", "apps/session_heartbeat/ebin", "apps/session_api/ebin"]}.
      
    • 通过项目根目录执行的测试;

      ct_run -pa apps/*/ebin -pa deps/*/ebin -dir apps/*/test/ -logdir tests -- cover cover.spec
      

    不确定这是否能解决您的问题,但对我有用。

    【讨论】:

      猜你喜欢
      • 2018-12-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-17
      • 2019-10-12
      • 1970-01-01
      相关资源
      最近更新 更多