如何测量并显示单个测试的运行时间?

2024-01-05

我有一个可能需要长时间运行的测试分级测试:

test("a long running test") {
  failAfter(Span(60, Seconds)) {
    // ...
  }
}

即使测试在超时限制内完成,其运行时间对于运行测试的人来说也是有价值的。我如何测量并显示这个的运行时间singlescalatest 输出中的特定测试?

Update:目前我用自己的函数测量运行时间,就像 r.v 的答案一样。我想知道是否分级测试已经提供此功能。


the -oD选项将给出测试的持续时间。例如,我在 build.sbt 中使用以下内容。

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

EDIT:

您还可以将以下内容用于单独运行:

> test-only org.acme.RedSuite -- -oD

See http://www.scalatest.org/user_guide/using_scalatest_with_sbt http://www.scalatest.org/user_guide/using_scalatest_with_sbt.

此外,您可以为一般时间测量定义以下函数:

def time[T](str: String)(thunk: => T): T = {
  print(str + "... ")
  val t1 = System.currentTimeMillis
  val x = thunk
  val t2 = System.currentTimeMillis
  println((t2 - t1) + " msecs")
  x
}

并在任何地方使用它(不依赖于 ScalaTest)

test("a long running test") {
  time("test running"){
    failAfter(Span(60, Seconds)) {
    // ...
  }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何测量并显示单个测试的运行时间? 的相关文章

随机推荐

  • IntelliJ Scala 配置问题

    所以 我下载了 Scala 并配置了路径 我可以从终端运行 Scala 控制台 Scala 插件已安装并且 你好世界 正在运行 问题是 当我编写 hello world 程序时 object First def main args Arra
  • 使用 Hive、S3、EMR 和恢复分区加载数据

    SOLVED 请参阅下面的更新 2 了解此问题的 解决方案 在 s3 中 我有一些 log gz 文件存储在嵌套目录结构中 例如 s3 BUCKET y 2012 m 11 d 09 H 10 我正在尝试使用多级分区规范将它们加载到 Ela
  • 创建本地和实例对象时出现 java StackOverflowError

    大家好 有人可以解释一下为什么这段代码会给我 StackOverflowError 错误吗 如果您能解释 instanceObj 初始化并调用 ObjectTest 构造函数和 java lang Object 构造函数时发生的情况 我真的
  • 在python中将具有多个值的字典键映射到json

    我正在尝试将一个具有多个值的键的字典映射到 python 中 这是我得到的 import json list abe matt roscoe key name nodes nodes setdefault key list abe matt
  • 如何为 ASP.NET MVC2 母版页提供独立于控制器的模型

    我在 ASP NET MVC2 下使用强类型视图和 autofac 进行依赖注入 并且尝试通过依赖注入获取通用动态标头 IE 我希望这种情况发生 即使视图已经存在 也不必离开该内容 我希望避免容器的静态发现和手动解析 但我找不到一种方法来轻
  • 结合 Knockout.js + KendoUI - 您的经验是什么?

    所以我看到 KendoUI 包含了与 Knockout js 集成的示例 http demos kendoui c om web integration index html http demos kendoui com web integ
  • 当用户选择不购买iOS应用内购买中的商品时,如何自定义错误处理?

    例如 当用户在应用内购买过程中要求登录时 他们可以单击 取消 按钮 然后应用程序将鞋 Can t connect to the iTunes Store 是否可以使用我们自己的回调来代替这个标准消息 我相信您不会收到 无法连接到 iTune
  • 从 App Engine 发送 HTTP 请求

    是否可以从我的 AppEngine 应用程序发送 HTTP 请求 我需要提出一些请求并从其他站点提取一些数据 是的 更多信息请点击这里 http code google com appengine docs python urlfetch
  • 添加 LTV 签名后,某些 pdf 文件已损坏

    我正在尝试在数字签名文档中添加 LTV 在某些文件中 它工作正常 但在某些文件中 它不起作用 我附上所有文件以供参考 我的 LTV 添加代码链接如下https github com akr pdftimestamp https github
  • 上下文包与完成通道以避免 goroutine 泄漏

    有两种不同的方法来清理 goroutine 使用kill 通道来发出取消信号 并使用done 通道来指示goroutine 已终止 type Worker struct Done chan struct Kill chan struct J
  • Tesseract 不使用路径变量

    为什么我的 Tesseract 实例要求我显式设置数据路径 但不想读取环境变量 让我澄清一下 运行代码 ITesseract tesseract new Tesseract String result tesseract doOCR myI
  • 使用react-pdf和react-chartjs-2生成pdf

    我环顾四周 但似乎找不到任何一起使用这两个库的示例 我的项目当前使用react pdf 生成pdf 报告 但我需要将chartjs 图表添加到我们将生成的一些新文件中 我不想使用两个不同的 pdf 库 也不必重新编码应用程序的某些部分以匹配
  • 在 Ubuntu 12.04 上完全删除并全新安装 python

    承认这一点很尴尬 但我只是继续努力在 Ubuntu 安装上设置我的 Python 环境 有时我让它工作得很好 但问题是 我觉得每当我坐下来对 python 项目进行一些业余爱好时 我最终都会花费几个小时来解决与我的 python 安装不一致
  • c# .NET CORE 使用 ITextSharp 将透明图像添加到现有 PDF

    我的目标是在现有 pdf 的每一页上添加公司徽标 不是水印 由于 pdf 文件和徽标的具体情况 我只能将徽标放置在 pdf 内容的顶部 而不是下面 并且徽标必须支持透明度 还有一个限制是我必须使用 NET Core 发布此内容并给出答案 因
  • Excel 中的错误消息

    在将 Excel ApplicationClass 的 DisplayAlerts 属性设置为 false 时 我遇到了以下错误的紧急问题 var excel new Excel Application excel DisplayAlert
  • Silverlight图像编辑器控件[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 您是否知道任何 Silverlight 图像编辑器 控件 商业或开源 主要功能要求 裁剪 调整大小 旋转图像 设置背景颜色 插入文字 插入
  • 如何在 Java 中查找 2D 数组中的子数组是否具有特定的和?

    我试图通过比较源图像和图案图像中存在的像素的平均颜色来解决图像匹配问题 我已将这个问题简化为子数组求和问题 但无法找到解决方法 假设我有一个包含所有正整数的二维数组 ARR 我有一个数字 x 它是小图案图像中存在的像素颜色的平均值 我只需要
  • iPhone - 从另一个视图控制器调用函数

    我有一个名为 sendDataToMotor 的函数 它在我的第一个视图控制器类中 我有另一个名为 SecondViewController 的视图控制器 我需要从 Second View Controller m 类调用此函数 我尝试申报
  • haproxy 全局 maxconn 和服务器 maxconn 的区别

    我对我的 haproxy 配置有疑问 Global settings global log 127 0 0 1 syslog emerg maxconn 4000 quiet user haproxy group haproxy daemo
  • 如何测量并显示单个测试的运行时间?

    我有一个可能需要长时间运行的测试分级测试 test a long running test failAfter Span 60 Seconds 即使测试在超时限制内完成 其运行时间对于运行测试的人来说也是有价值的 我如何测量并显示这个的运行