如何为kotlin数据类创建单元测试用例?

问题描述 投票:0回答:1

我已经为我的示例应用程序创建了一些数据类,我现在需要为这些数据类编写单元测试用例。我现在需要为这些数据类编写单元测试用例。我使用的是Junit4.12。这是我的数据类。

data class Tracking(val  param1 : String?=null, val  param2 : String?=null, val param3 : String?=null){}

我试着为这个模型写了一个基本的单元测试用例,如下图。

@Test
    fun tracking()
    {
        val trackingData= Tracking("7030054",
        "skdfksbfbkjsdf",
        "dfkhsbfsjf")
        Assert.assertEquals("true",trackingData.param1,"7030054")
    }

但我不认为这是一个正确的单元测试案例的执行方式。我的单元测试用例的目标是断言一个异常,如果用户发送空值作为输入。请帮助我。

android unit-testing kotlin junit4 data-class
1个回答
0
投票

你的值都是String吗,所以是可空的。如果你想让它们始终是非空的,就用String代替。那么你就不需要单元测试,因为编译器会检查它们的非空性。

如果它们有时可以是空的,但并不总是,你必须首先写一个函数来检查这个条件。

fun simpleValidation() {
  if(param1 == null) {
    throw RuntimeException("Should not be null")
  }
}

你可以通过以下方式进行单元测试。

@Test
    fun tracking()
    {
        val trackingData= Tracking(null,
        "skdfksbfbkjsdf",
        "dfkhsbfsjf")
        Assertions.assertThrows(RuntimeException::class.java) { trackingData.simpleValidation() }
    }

假设您使用的是JUnit5

© www.soinside.com 2019 - 2024. All rights reserved.