在Kotlin中编写单元测试,你可以使用JUnit和Ktor Test等测试框架。这里给出一个简单的JUnit 5单元测试示例:
dependencies {
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
}
class Calculator {
fun add(a: Int, b: Int): Int {
return a + b
}
fun subtract(a: Int, b: Int): Int {
return a - b
}
}
@Test
注解标记测试方法。在这个例子中,我们将为Calculator
类的add
和subtract
方法编写测试用例:import org.junit.jupiter.api.BeforeEach
import org.junit.jupiter.api.Test
import static org.junit.jupiter.api.Assertions.assertEquals
class CalculatorTest {
private lateinit var calculator: Calculator
@BeforeEach
fun setUp() {
calculator = Calculator()
}
@Test
fun `add should return the sum of two numbers`() {
val result = calculator.add(3, 4)
assertEquals(7, result, "3 + 4 should equal 7")
}
@Test
fun `subtract should return the difference between two numbers`() {
val result = calculator.subtract(7, 3)
assertEquals(4, result, "7 - 3 should equal 4")
}
}
在这个测试类中,我们使用了@BeforeEach
注解来在每个测试方法执行前初始化calculator
对象。然后,我们使用@Test
注解标记了两个测试方法,分别测试add
和subtract
方法的正确性。在测试方法中,我们使用assertEquals
方法来验证预期结果与实际结果是否相等。
现在,当你运行这个测试类时,JUnit 5将自动执行这些测试方法,并报告测试结果。