我正在尝试为Fragment类编写单元测试。 这样可以实例化“被测系统”吗?
val sut = MyFragment()
我知道有几种编写用于测试片段的UI测试的方法,但是我想实例化Fragment类,在其中可以将片段中的测试方法单元化。
如,
@Test
fun testComponents() {
val bundle = Bundle()
val context = sut.requireContext()
sut.checkPwdEditTextIsEmpty(text = "")
}
我如何在Kotlin中做到这一点?
此外,如何在Kotlin测试中编写init()和tearDown()?
答案 0 :(得分:3)
requireContext()
之类的方法和访问片段视图的方法要求将片段添加到FragmentManager。根据{{3}},您可以使用FragmentScenario
准确地编写这些类型的测试:
@Test
fun testComponents() {
val scenario = launchFragmentInContainer<MyFragment>()
scenario.onFragment { sut ->
val context = sut.requireContext()
sut.checkPwdEditTextIsEmpty(text = "")
}
}