Я считаю, что lateinit, lazy, nullable и non-nullable являются хорошими функциями в Kotlin также в модульном тесте.
вы можете знать, что lateinit работает только с var lateinit var
, это дает следующие функции:
- вы можете инициализировать
lateinit var
из любой части проекта, так что это дает вам возможность инициализировать переменную, возможно, в вашем тестовом примере lateinit var
не работает со значениями, не допускающими значения NULL, поэтому вы можете присвоить нулевое значение переменной lateinit и проверить ее обнуляемость в качестве контрольного примера. - в
lateinit var
вы можете часто менять значение, а так как вы меняете значения, это увеличивает ваши тестовые случаи, следовательно, ваш охват.
в то время как в ленивом, он работает только с val, val ins by lazy{}
- Это хорошая практика, когда вы у вас есть singleton (класс объекта), и ваши тестовые примеры зависят от этого экземпляра, поэтому вы создаете его один раз
by lazy
Я рекомендую прочитать эту статью о передовой практике в kotlin.
Надеюсь, это было хорошо. ?