android - Robolectric-2.3 测试动画

标签 android animation robolectric

我正在使用 Robolectric-2.3 为我的项目编写测试。

我想测试我的 UI 属性,例如 View 可见性。显示/隐藏 View 的 Action 被包装到动画中。 如何测试?

我尝试使用 ShadowSystemClock.sleep() 方法等待动画结束,但它似乎没有像我预期的那样工作。

@Test
public void testHideSearch() throws Exception {
    mListFragment.hideSearch();   //<--- animation launched here
    sleep(1000);
    View searchEditText = mListFragment.getView().findViewById(R.id.filterEditText);
    assertFalse(searchEditText.getVisibility() == View.VISIBLE);
}

解决问题的正确方法是什么?

最佳答案

尝试使用这个代替 sleep :

Robolectric.getUiThreadScheduler.advanceBy(1000);

关于android - Robolectric-2.3 测试动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23892059/

相关文章:

android - TextView 中的 HTML 具有不同的粗体和斜体字体

javascript - HTML 中类似桌面的过渡效果

ios - SwiftUI中的高级动画

ios - UIView翻转动画问题

java - 如何使用 Android.mk 获取 AOSP Java 和 Robolectric 中的代码覆盖率

android-studio - Robolectric和Android Studio问题

添加新项目时,Android Firebase 聊天 RecyclerView 自动滚动到底部

android - 从 NavController 获取 fragment

java - 无法执行安卓 Activity

android - 机器人 + Maven