ScalaMeter:测试引发异常

时间:2019-09-17 13:36:08

标签: scala scalameter

这是我第一次与ScalaMeter和Scala合作。我正在尝试测试两种简单的方法,并根据ScalaMeter Simple benchmark页中给出的示例编写了以下代码:

import org.scalameter.api._

object RangeBenchmark extends Bench.LocalTime {
  val sizes = Gen.range("size")(10, 150, 10)

  val ranges = for {
    size <- sizes
  } yield 0 until size

  def testPow(x: Double) = Math.pow(x, 5)
  def testMul(x: Int) = x * x * x * x * x

  performance of "Range" in {
    measure method "testMul" in {
        using(ranges) in { r =>
            r.foreach(testMul(_))
        }
    }

    measure method "testPow" in {
      using(ranges) in { r =>
        r.foreach(testPow(_))
      }
    }
  }
}

,它运行正常。但是,如果将预定义的测试配置Bench.LocalTime更改为Bench.ForkedTimeBench.OfflineReport,则会收到以下错误消息:

Test threw exception: java.lang.ClassNotFoundException: org.scalameter.Parameters                                                                                                                                  java.lang.ClassNotFoundException: org.scalameter.Parameters
...
[error] Could not run test RangeBenchmark: java.lang.ClassNotFoundException: org.scalameter.Parameters

顺便说一下,我正在运行JDK 11。

所以我有两个问题:

  1. 有什么想法我做错了吗?
  2. 这是测试简单方法或函数的正确方法吗?

谢谢

0 个答案:

没有答案