Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在模拟类scala中初始化变量_Scala_Unit Testing_Mockito_Akka_Actor - Fatal编程技术网

在模拟类scala中初始化变量

在模拟类scala中初始化变量,scala,unit-testing,mockito,akka,actor,Scala,Unit Testing,Mockito,Akka,Actor,我正在为akka actor模型实现编写单元测试。系统包含需要初始化的类和特征。我的问题在于方法的测试。当我模拟一个类所需的参数时,它会删除intelij编译器错误,但是所有变量都设置为null 我试图使用 when(mock.answer).thenReturn(42) 直接分配变量 val mock.answer = 42 以上两个错误都是由于编译错误造成的。“When”未被识别,并且在运行时错误的情况下直接赋值 如有任何见解,将不胜感激 我不确定是否正

我正在为akka actor模型实现编写单元测试。系统包含需要初始化的类和特征。我的问题在于方法的测试。当我模拟一个类所需的参数时,它会删除intelij编译器错误,但是所有变量都设置为null

我试图使用

         when(mock.answer).thenReturn(42)
直接分配变量

        val mock.answer = 42
以上两个错误都是由于编译错误造成的。“When”未被识别,并且在运行时错误的情况下直接赋值


如有任何见解,将不胜感激

我不确定是否正确理解了您的问题,但请尝试下面的自包含代码片段,如果不够清楚,请告诉我:

import org.junit.runner.RunWith
import org.scalatest.junit.JUnitRunner
import org.scalatest.mockito.MockitoSugar
import org.scalatest.{FunSuite, Matchers}
import org.mockito.Mockito.when

@RunWith(classOf[JUnitRunner])
class MyTest extends FunSuite with Matchers with MockitoSugar {

  trait MyMock {
    def answer: Int
  }

  test("my mock") {
    val myMock = mock[MyMock]
    when(myMock.answer).thenReturn(42)

    myMock.answer should be(42)
  }
}

我不确定是否正确理解了您的问题,但请尝试下面的自包含代码段,如果不够清楚,请告诉我:

import org.junit.runner.RunWith
import org.scalatest.junit.JUnitRunner
import org.scalatest.mockito.MockitoSugar
import org.scalatest.{FunSuite, Matchers}
import org.mockito.Mockito.when

@RunWith(classOf[JUnitRunner])
class MyTest extends FunSuite with Matchers with MockitoSugar {

  trait MyMock {
    def answer: Int
  }

  test("my mock") {
    val myMock = mock[MyMock]
    when(myMock.answer).thenReturn(42)

    myMock.answer should be(42)
  }
}

我想,您正在寻找
导入org.mockito.mockito.when
对您有用,先生。谢谢。我想,您正在寻找
导入org.mockito.mockito.when
先生。谢谢你。