首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不能运行黄牛

不能运行黄牛
EN

Stack Overflow用户
提问于 2016-03-15 10:52:32
回答 2查看 754关注 0票数 0

我正在考瑟拉做反应式编程课程的原理。在其中一个作业中,我需要使用一个标尺类。我在Intellij中打开了以下测试类:

代码语言:javascript
复制
package quickcheck

import org.scalatest.FunSuite

import org.junit.runner.RunWith
import org.scalatest.junit.JUnitRunner

import org.scalatest.prop.Checkers
import org.scalacheck.Arbitrary._
import org.scalacheck.Prop
import org.scalacheck.Prop._

import org.scalatest.exceptions.TestFailedException

object QuickCheckBinomialHeap extends QuickCheckHeap with BinomialHeap

@RunWith(classOf[JUnitRunner])
class QuickCheckSuite extends FunSuite with Checkers {
  def checkBogus(p: Prop) {
    var ok = false
    try {
      check(p)
    } catch {
      case e: TestFailedException =>
        ok = true
    }
    assert(ok, "A bogus heap should NOT satisfy all properties. Try to find the bug!")
  }

  test("Binomial heap satisfies properties.") {
    check(new QuickCheckHeap with BinomialHeap)
  }

  test("Bogus (1) binomial heap does not satisfy properties.") {
    checkBogus(new QuickCheckHeap with Bogus1BinomialHeap)
  }

  test("Bogus (2) binomial heap does not satisfy properties.") {
    checkBogus(new QuickCheckHeap with Bogus2BinomialHeap)
  }

  test("Bogus (3) binomial heap does not satisfy properties.") {
    checkBogus(new QuickCheckHeap with Bogus3BinomialHeap)
  }

  test("Bogus (4) binomial heap does not satisfy properties.") {
    checkBogus(new QuickCheckHeap with Bogus4BinomialHeap)
  }

  test("Bogus (5) binomial heap does not satisfy properties.") {
    checkBogus(new QuickCheckHeap with Bogus5BinomialHeap)
  }
}

当我试图运行它时,我得到了以下输出:

代码语言:javascript
复制
+ Heap.min1: OK, passed 100 tests.
+ Heap.minOfTwo: OK, passed 100 tests.
+ Heap.insertAndDelete: OK, passed 100 tests.

Heap.min1Heap.minOfTwoHeap.insertAndDelete是我想要检查的方法,所以这很好。但是,它们通过的测试与我试图运行的测试文件没有任何关联。

如何从Intellij正确运行此测试文件?我可以在其他地方运行它(比如sbt控制台)吗?

EN

回答 2

Stack Overflow用户

发布于 2016-03-15 11:19:10

您使用这个库ScalaTest吗?在sbt中,您可以运行代码/测试它,编译和更新库(比在Intellij中更快),并做许多其他有用的事情

票数 0
EN

Stack Overflow用户

发布于 2016-05-15 17:46:02

在IntelliJ中,在编辑器中打开该文件并不能确保在执行测试时运行的是测试类。您的项目可以包含多个运行/调试配置,您可以使用Run > Edit Configurations进行编辑。要只执行quickcheck.QuickCheckSuite中定义的测试,需要将Test Class:设置为quickcheck.QuickCheckSuite的ScalaTest配置。然后您可以使用Run > Run…执行它。

或者,从sbt,您可以运行

test-only quickcheck.QuickCheckSuite

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36009185

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档