androidTest assertEquals не удается

Я учусь создавать сквозные тесты, поэтому я написал объект-компаньон следующим образом:

companion object {
    lateinit var sDataManager: DataManager

    @BeforeClass
    @JvmStatic
    fun classSetUp() {
        sDataManager = DataManager.getInstance()
    }
}

Тест заключается в следующем

@Test
fun createNewNote() {
    val course = sDataManager.getCourse("java_lang")
    val noteTitle = "Test note title"
    val noteText = "This is the body of our test note"

    onView(withId(R.id.fab)).perform(click())

    onView(withId(R.id.spinner_courses)).perform(click())
    onData(allOf(instanceOf(CourseInfo::class.java), equalTo(course))).perform(click())
    onView(withId(R.id.spinner_courses)).check(matches(withSpinnerText(containsString(course.title))))

    onView(withId(R.id.text_note_title)).perform(typeText(noteTitle))
        .check(matches(withText(containsString(noteTitle))))

    onView(withId(R.id.text_note_text)).perform(typeText(noteText), closeSoftKeyboard())
        .check(matches(withText(containsString(noteText))))


    val noteIndex = sDataManager.notes.size - 1
    val note = sDataManager.notes[noteIndex]
    assertEquals(noteTitle, note.title)
    assertEquals(noteText, note.text)

    assertEquals(course, note.course)
}

Все, кроме утверждений, работает, я знаю, что создается новая заметка, потому что размер в sDataManager.notes увеличивается. Если я отлаживаю тест, когда получаю последнюю заметку,val note = notes[noteIndex], в разделе переменных я вижу следующую ошибку note = {NoteInfo@12151} Method threw 'java.lang.NullPointerException' exception. Cannot evaluate com.example.jaime.notekeeper.mode.NoteInfo.toString(), Действительно свойства в note являются нулевыми Я не знаю, если это проблема, потому что я делаю что-то не так в тесте или в DataManager.

Кстати, когда я запускаю приложение, все работает как положено, у меня также есть модульные тесты, чтобы проверить, создана ли заметка, все тесты проходят.

0 ответов

Другие вопросы по тегам