Tag: spock

Spock与Mockito测试Kotlin课程

我有一些用Spock编写的测试,它涵盖了我的Java代码。 现在我迁移到Kotlin,问题是我不能嘲笑最终课,所以我决定使用这里描述的Mockito插件: https : //github.com/mockito/mockito/wiki/What%27s-new-in-Mockito-2# unmockable 问题是我需要用Mockitos的any(),anyString(),when(),then()等替换每个’_”>>’吗? 我试图用Mockito来模拟最终的类,但它似乎不工作。 如果我必须替换这种情况下使用Spock测试框架的好处吗? 也许我应该删除它,只留在Mockito?

在Spock单元测试中,模拟方法没有被调用

我试图使用Spock框架来实现单元测试,这是我的测试看起来像: def setup() { scrollableResultsMock = Mock(ScrollableResults) paymentRepositoryMock = Mock(PaymentRepository) paymentRegistryService = new PaymentRegistryService(paymentRepositoryMock) } @Unroll def 'should correctly process'() { given: paymentRepositoryMock.findUnconfirmedTransactions(_ as LocalDate, _ as Days) >> scrollableResultsMock … } 这里是我试图注入嘲笑对象的类: @Service open class PaymentRegistryService @Autowired constructor( val paymentRepository: PaymentRepository ) { @Transactional open fun parseRegistryFileStream(input: InputStream): LinkedList<Pair<Long, String>> { … val registry […]

无法获得null对象上的属性'kotlinOutputDir' – Kotlin和Spock

我想用Spock Framework来测试Kotlin类。 当我的项目中只有Java类时,一切正常。 但是,在版本1.1.51添加kotlin到我的项目后,测试stoped工作,现在我收到这样的错误: Error:Execution failed for task ':app:compileDebugUnitTestGroovyWithGroovyc'. > Cannot get property 'kotlinOutputDir' on null object 我正在使用Android Studio 3.0 Beta 7 这里是我的项目和模块build.gradle文件: 项目build.gradle // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { ext.kotlin_version = '1.1.51' repositories { google() jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.0.0-beta7' classpath 'org.codehaus.groovy:groovy-android-gradle-plugin:1.2.0' // […]

纯粹的kotlin模块中的“空测试套件”。 (斯波克/ Android装置)

我的Android应用程序是多模块项目: include (android-app/kotlin-android)':application', (pure kotlin)':presentation', (pure kotlin)':domain', (android-library/kotin-android)':dataproviders' 模块:应用程序和:数据提供者与Spock正常工作,测试运行和完成没有问题。 但是:纯粹kotlin模块的表现和领域与spock框架有问题。 有我简单的例子: MostPopularPresenterTest.groovy class MostPopularPresenterTest extends Specification { def "exampleTest"(){ when: int i = 1 then: i == 1 } } 此测试以错误结束: 未找到类:“pl.hypeapp.presentation.mostpopular.MostPopularPresenterTest”空的测试套件。 但是,用Java / Junit4写的测试通过并没有发生任何错误: MostPopularPresenterTest2.java public class MostPopularPresenterTest2 { @Test public void test(){ assertEquals(1, 1); } } 我正在使用Android Studio 3.0 Canary 5你可以看看我在github上的build.gradle文件: 的build.gradle dependencies.gradle […]