如果我在顶级(课外)编写代码。
我是否可以编写此代码的JUnit测试而无需为此测试目的创建类?
答案 0 :(得分:2)
我们假设您在文件中有顶级功能:
// functions.kt
package some.pack.age
fun add(x: Int, y: Int) = x + y
您可以像这样创建测试(在IntelliJ中创建此文件的一种简单方法是使用函数名称上的Alt + Enter
快捷方式,然后选择Create test
):
// FunctionKtTest.kt - the default suggested name
package some.pack.age
import org.junit.Assert.*
import org.junit.Test
class FunctionsKtTest {
@Test
fun additionIsCorrect() {
assertEquals(5, add(2, 3))
}
}
JUnit测试本身确实需要定义一个包含@Test
函数的类,当然你可以根据需要命名这个类。
如果您将此课程设置在与该功能相同的包中,您甚至不必导入它。如果您将它放在另一个包中,您仍然可以像这样导入顶级函数:
import some.pack.age.add