Наблюдайте стандартный вывод из мультиплатформенного kotlin кода CommonTest - PullRequest
2 голосов
/ 20 февраля 2020

Я просто хочу увидеть вывод нескольких простых println(...) в моем Kotlin мультиплатформенном commonTest коде. Мой build.gradle.kts выглядит примерно так:

import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinNativeTarget

plugins {
    kotlin("multiplatform") version "1.3.61"
    kotlin("plugin.serialization") version "1.3.61"
}


kotlin {

   sourceSets {

        val commonMain by getting { ... }

        val commonTest by getting {
           dependencies {
              implementation("org.jetbrains.kotlin:kotlin-test-common")
              implementation("org.jetbrains.kotlin:kotlin-test-annotations-common")
           }
        }

        val jvmMain by getting { ... }

        val jvmTest by getting {
           dependencies {
              implementation(kotlin("test-junit"))
           }
        }

        // and so on ...

   }

}

Тем временем в ~/src/commonTest/kotlin/my/company/library/CommonTest.kt:

package my.company.library

import kotlin.test.*

class CommonTest() {

   @Test
   fun testTrue() {
      println("Hello, test!")
      assertTrue(true)
   }

}

Пока я выполняю такие тесты

./gradlew jvmTest

Я хочу, чтобы Hello, test! появился в терминале. Я не против набрать немного лишних слов в командной строке.

Различные ответы по SO, включающие testLogging.showStandardStreams, относятся к «стандартной» цели теста на прохождение теста, и я не уверен, как или вообще она взаимодействует. с мультиплатформенными целями тестирования.

...