Articles of spek

Тестирование с помощью spek и обмен некоторыми базовыми тестовыми примерами для базовых классов

Я использую Spek в качестве тестовой среды и испытываю проблемы при совместном использовании некоторых тестовых шагов для базовых классов. У меня есть абстрактный базовый класс и два производных класса. abstract class Base { abstract fun send() } class Foo : Base() { override fun send() {} fun anotherFunction() { } } class Bar : Base() […]

Mock & unit test a Fragment с использованием Spek & Mockito

Я использую среду Spek & Mockito для тестирования моего приложения для Android. Я хочу MapFragment тестовые функции моего MapFragment (типа android.support.v4.app.Fragment() ). По моему мнению, я должен высмеять упомянутый фрагмент, чтобы проверить его, как это может быть достигнуто с помощью упомянутых выше структур? Простите отсутствие фрагментов, поскольку различные обучающие материалы, которые я нашел с использованием […]

Почему этот Spek на действии не запускается?

Когда я запускаю этот примерный код, весь код в действии «on» не запускается в Android Studio. Ты знаешь почему? чего не хватает? import org.jetbrains.spek.api.Spek import org.jetbrains.spek.api.dsl.describe import org.jetbrains.spek.api.dsl.given import org.jetbrains.spek.api.dsl.it import org.jetbrains.spek.api.dsl.on @RunWith(JUnitPlatform::class) class SpekTest : Spek({ val x = 2 val y = 3 given("x = $x and y = $y") { val sum […]

Плагин JaCoCo Gradle сообщает об уровне покрытия, равном 0,0, для каждой упаковки

Моя структура каталогов: |/src | |/main | | |/com.episo | | | |/contracts | | | | |/clip | | | | |/security | | | |/repositories | | | | |/memory | |/test | | |/com.episo | | | |/contracts | | | | |/clip | | | | |/security | | | |/repositories […]

Создание абстрактного Spek для инициализации общих объектов с помощью Kotlin and Spek

Я пытаюсь написать модульные тесты с помощью рамки Kotlin + Spek. До сих пор выглядит неплохо, но у меня есть проблема, что я должен написать много кода шаблона, если я хочу иметь несколько объектов Spec для одного класса, который я тестирую. Это мой код, чтобы проиллюстрировать проблему: object MyFirstSpec : Spek({ val myMock1: SomeObject1 = […]

Доступ к Spek для внутренних видимых классов Kotlin

Я собрал проект на основе Maven, который использует Spek в Runner Junit 4 для тестирования. Я настроил проект в Codacy и получил полезное предложение либо документировать мои публичные классы, либо уменьшать их видимость (отлично). Я обнаружил, что компилятор Kotlin, по-видимому, рассматривает тесты как существующие в другом модуле, что очень затрудняет эффективное тестирование модулей с учетом […]

Выполнение тестов с помощью kotlin spek и kluent

Попытка заставить spek работать с kotlin, но сталкивается с некоторыми проблемами. У меня самый простой тест: object TestSpec : Spek({ describe("A greeter") { it("should fail") { "hello" shouldEqual "somethingelse" } } }) И это не сработает. Я пробовал следующие варианты: object TestSpec : Spek({ describe("A greeter") { it("should fail") { "hello" shouldEqual "somethingelse" } } […]

Как организовать несколько блоков сопрограммы и ожидания в тесте Kotlin Spek?

Я написал неудачный тест Spek, потому что я сделал неправильное предположение о порядке выполнения, включающем несколько сопрограмм, и it функционирует: given("a test") { runBlocking { print("a") } it("block 1") { runBlocking { print("b") } } runBlocking { print("c") } it("block 2") { runBlocking { print("d") } } } Я ожидал, что abcd будет напечатан, но […]

Gradle не может найти тесты

Я использую платформу тестирования Spek для моего проекта Kotlin. Я могу запускать тесты через плагин Intellij Idea Spek, но не могу запускать их через gradle (build или test). Согласно SimpleTest.kt при запуске из плагина Idea 1 тест преуспел, а 1 не удалось, при запуске через gradle он говорит, что 1 контейнер найден с 0 тестами. […]

Колин Спек Рамки сбой с / Gradle

Я получаю сбой, в то время как spek пытается найти тесты. Я пробовал много разных версий и примеров конфигураций. Я бегу из командной строки. Gradle 4.0, mac osx. Любая помощь будет оценена! Вот ошибка: WARNING: TestEngine with ID 'spek' failed to discover tests java.lang.NoSuchMethodError: org.junit.platform.commons.util.ReflectionUtils.findAllClassesInClasspathRoot(Ljava/nio/file/Path;Ljava/util/function/Predicate;Ljava/util/function/Predicate;)Ljava/util/List; at org.jetbrains.spek.engine.SpekTestEngine.resolveSpecs(SpekTestEngine.kt:66) at org.jetbrains.spek.engine.SpekTestEngine.discover(SpekTestEngine.kt:50) at org.junit.platform.launcher.core.DefaultLauncher.discoverEngineRoot(DefaultLauncher.java:130) at org.junit.platform.launcher.core.DefaultLauncher.discoverRoot(DefaultLauncher.java:117) at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:90) […]