【问题标题】:Espresso does not wait for animation to finish assertion faillsEspresso 不等待动画完成断言失败
【发布时间】:2015-05-26 19:56:43
【问题描述】:

我正在声明一些视图,这些视图将在一些动画之后显示或加载缓慢

Ex:- 操作栏上的搜索按钮延迟显示在操作栏上,在其显示的断言失败之前,它应该等待吗?

在棒棒糖中,我们有一个涟漪吹动动画,然后显示一些视图,但在动画完成之前断言失败,espresso 应该等待所有视图和动画变为空闲,对吗? 当我使用自定义空闲资源并等待 2 秒时它起作用了,但这不是正确的方法。

//Its my custom idling resource which wait for 2000 millisec
EspressoSolo.sleep(200);
    RecordingTest.getDefault().customTests(1, 1);

【问题讨论】:

    标签: android android-testing android-espresso


    【解决方案1】:

    我发现的大部分资源(如上面的资源)都链接到死页。

    我找到了这篇博文,但它也链接到上面的死链接,但事实证明它很有用,因为它提供了如何设置它的分步说明。

    http://product.reverb.com/2015/06/06/disabling-animations-in-espresso-for-android-testing/

    我遇到了类似的问题,因为我需要等待动画才能单击按钮等。后来我了解到,正如 Alexandre 所指出的,Espresso 建议在测试期间禁用动画。

    您可以在博文底部阅读如何将其添加到您的运行配置中。

    要让任务在测试之前运行: 在显示要运行的内容(“app”或“Android Tests”或“Unit Test”)的下拉列表中,选择“Edit Configurations”,然后选择“Android Tests”主配置。 靠近底部的是一个标有“发射前:”的框。点击“+”展开“添加新配置”对话框并选择“运行 Gradle 任务”。 在 Gradle Project 中选择您的应用,然后在“Tasks”中输入 grantAnimationPermission,它应该会自动完成。

    或者,您可以在移动设备或虚拟设备上转到“开发者设置”,然后将动画比例设置为关闭。

    但是请注意,我发现这不会禁用我的内联动画,如下所示:

    new Handler().postDelayed(new Runnable() {
                @TargetApi(Build.VERSION_CODES.HONEYCOMB_MR1)
                @Override
                public void run() {
                    try {
                        layout_login.animate()
                                .translationY(0)
                                .alpha(1)
                                .setDuration(500)
                                .setInterpolator(new AccelerateDecelerateInterpolator());
    
                    } catch (Exception e) {
    
                    }
                }
            }, 1600);
    
    【解决方案2】:

    我正在复制 Google 教程中指示我们执行的操作:

    在您的设备上,在“设置”->“开发者选项”下禁用以下 3 个设置:

    窗口动画比例

    过渡动画比例

    动画持续时间比例

    这会关闭动画并允许您的测试运行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-11
      相关资源
      最近更新 更多