Spec-Zone.ru › Kotlin 1.8

Тестирование кода с использованием JUnit в JVM – учебник

В этом учебнике показано, как написать простой модульный тест и запустить его с помощью инструмента сборки Gradle.

В примере учебника используется библиотека kotlin.test и выполняется тест с помощью JUnit.

Для начала скачайте и установите последнюю версию IntelliJ IDEA.

Добавление зависимостей

  1. Откройте проект Kotlin в IntelliJ IDEA. Если у вас еще нет проекта, создайте его.

    Укажите JUnit 5 в качестве фреймворка для тестов при создании проекта.

  2. Откройте файл build.gradle(.kts) и добавьте следующую зависимость в конфигурацию Gradle. Эта зависимость позволит работать с kotlin.test и JUnit.

    dependencies {
        // Other dependencies.
        testImplementation(kotlin("test"))
    }
    
    dependencies {
        // Other dependencies.
        testImplementation 'org.jetbrains.kotlin:kotlin-test'
    }
    
  3. Добавьте задачу test в файл build.gradle(.kts):

    tasks.test {
        useJUnitPlatform()
    }
    
    test {
        useJUnitPlatform()
    }
    

    Если вы создали проект с помощью мастера Новый проект, задача будет добавлена автоматически.

Добавление кода для тестирования

  1. Откройте файл main.kt в src/main/kotlin.

    Директория src содержит Kotlin-файлы исходного кода и ресурсы. Файл main.kt содержит пример кода, который будет выводить Hello, World!.

  2. Создайте класс Sample с функцией sum(), которая складывает два целых числа:

    class Sample() {
    
        fun sum(a: Int, b: Int): Int {
            return a + b
        }
    }
    

Создание теста

  1. В IntelliJ IDEA выберите Код | Сгенерировать | Тест... для класса Sample.

    Create a test
  2. Укажите имя класса теста. Например, SampleTest.

    IntelliJ IDEA создаст файл SampleTest.kt в директории test. Эта директория содержит Kotlin-файлы исходного кода и ресурсы тестов.

    Вы также можете вручную создать файл *.kt для тестов в src/test/kotlin.

  3. Добавьте код теста для функции sum() в SampleTest.kt:

    • Определите функцию теста testSum() с помощью аннотации @Test.

    • Проверьте, что функция sum() возвращает ожидаемое значение, используя функцию assertEquals().

    import kotlin.test.Test
    import kotlin.test.assertEquals
    
    internal class SampleTest {
    
        private val testSample: Sample = Sample()
    
        @Test
        fun testSum() {
            val expected = 42
            assertEquals(expected, testSample.sum(40, 2))
        }
    }
    

Запуск теста

  1. Запустите тест, используя значок в области слева от кода.

    Run the test

    Вы также можете запустить все тесты проекта через командную строку, используя команду ./gradlew check.

  2. Проверьте результат в окне Выполнить:

    Check the test result. The test passed successfully

    Функция теста была успешно выполнена.

  3. Убедитесь, что тест работает правильно, изменив значение переменной expected на 43:

    @Test
    fun testSum() {
        val expected = 43
        assertEquals(expected, classForTesting.sum(40, 2))
    }
    
  4. Запустите тест снова и проверьте результат:

    Check the test result. The test has been failed

    Выполнение теста завершилось ошибкой.

Что дальше

После завершения первого теста вы можете:

  • Попробуйте написать другой тест, используя другие функции kotlin.test. Например, вы можете использовать функцию assertNotEquals().

  • Создайте свое первое приложение с Kotlin и Spring Boot.

  • Посмотрите эти видеоучебники на YouTube, которые демонстрируют, как использовать Spring Boot с Kotlin и JUnit 5.

Последнее изменение: 10 января 2023 г.
Создание RESTful веб-сервиса с базой данных с помощью Spring Boot – учебник Смешивание Java и Kotlin в одном проекте – учебник

© 2010–2023 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/docs/jvm-test-using-junit.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API