我在单元测试时收到此错误:“LiveData 值从未设置。”
我正在尝试测试我的视图模型的 getStudents() 方法,如下所示:
学生视图模型:
@HiltViewModel
class StudentViewModel @Inject constructor(
private val getStudentsUseCase: GetStudentsUseCase
) : ViewModel() {
private val _studentLD = MutableLiveData<List<Student>>()
val studentLD: LiveData<List<Student>> = _studentLD
private val _errorLD = MutableLiveData<String>()
val errorLD: LiveData<String> = _errorLD
fun getStudents() {
viewModelScope.launch {
var result = getStudentsUseCase.execute()
result.onSuccess {
_studentLD.value = it
}.onFailure {
_errorLD.value = it.message.toString()
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
学生视图模型测试:
@OptIn(ExperimentalCoroutinesApi::class)
class StudentViewModelTest {
private lateinit var viewModel: StudentViewModel
@get:Rule
var instantExecutorRule = InstantTaskExecutorRule()
@get:Rule
var mainCoroutineRule …Run Code Online (Sandbox Code Playgroud)