【问题标题】:Scala Sbt - Measure task time for subprojectsScala Sbt - 测量子项目的任务时间
【发布时间】:2020-07-31 04:43:41
【问题描述】:

我们确实有一个包含很多子项目的 Scala-Sbt-Project。

通常,我们在根(聚合)上调用compiletest 任务。 我正在寻找一种方法,如何获得每个子项目任务使用时间的概览。

因为(尤其是测试)太慢(4.5 小时),我想看看,哪些子项目这么慢。我对编译测试阶段特别感兴趣。 有人有提示吗?

在 sbt 或 scalatest 中是否有隐藏的功能,或者是否有一个很好的插件可以找出一直被吃掉的地方?

在所有项目完成任务后概述所用时间会非常好。

【问题讨论】:

    标签: scala sbt scalatest


    【解决方案1】:

    例如,尝试configuring reporter 显示带有D 标志的测试持续时间

    Test / testOptions += Tests.Argument("-oD")
    

    使用标准输出报告器打印

    [info] ExampleSpec:
    [info] The config map
    [info] - should contain target directory used by sbt (18 milliseconds)
    

    注意(18 milliseconds)

    同时考虑How to profile the time spent for a task in SBT。例如,在项目根目录中创建.jvmopts 文件,其中包含条目

    -Dsbt.task.timings=true
    

    【讨论】:

    • -Dsbt.task.timings=true 很好地概述了花费时间。感谢您的提示。由于这个标志,将接受这个答案。还是有点难过,看不到每个子项目分组的结果。
    • 也许这对其他用户有用:其他命令行参数的概述:scala-sbt.org/1.x/docs/Command-Line-Reference.html
    猜你喜欢
    • 2020-05-15
    • 1970-01-01
    • 2019-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-18
    • 2022-11-12
    • 2015-01-18
    相关资源
    最近更新 更多