小编Sam*_*uel的帖子

对 Kotlin 应用程序进行单元测试时收到“System.logW:未设置兼容性回调!查询更改 119147584”警告

我编写了一个包含 RobolectricsTestRunner 的单元测试。

单元测试通过,但出现以下警告:

System.logW: No Compatibility callbacks set! Querying change 119147584
Run Code Online (Sandbox Code Playgroud)

我在单元测试中所做的一切,都是在共享首选项中保存了一个变量。这个警告不会破坏任何东西。我只是想知道这意味着什么。单元测试:

@RunWith(RobolectricTestRunner::class)
@Config(sdk = [30])
class SharedPreferencesProviderTest {

    private lateinit var sharedPreferencesProvider: SharedPreferencesProviderInterface

    @Before
    fun setup() {
        // setup Shared preferences
        ...

        // Shared Preferences Access
        ...

        // clearing Shared Preferences
       ...
    }

    @Test
    fun firstStart_shouldBeTrueDefaultAndCheckChange() {
        // Default check
        var firstStart =
            sharedPreferencesProvider.getIsFirstStart()
        var expected = true
        assertTrue(firstStart == expected)

        // Check whether it handles changes
        sharedPreferencesProvider.setIsFirstStart(false)
        firstStart =
            sharedPreferencesProvider.getIsFirstStart()
        expected = false
        assertTrue(firstStart == expected)
    }} …
Run Code Online (Sandbox Code Playgroud)

android unit-testing sharedpreferences robolectric kotlin

19
推荐指数
1
解决办法
1808
查看次数