我有一个使用RotateAnimation()旋转的ImageView。我正在编写一个测试用例,我想在单击按钮后测试该视图是否已旋转。所以我认为我可以在点击之前和之后获得旋转角度来检查差异:
oldRotationDegrees = view.getRotation();
//click that button and wait for 3 seconds
assertTrue(Math.abs(view.getRotation() - oldRotationDegrees) > 0);
然而,这个差异总是为0,因为getRotation()总是返回0.我已经检查过确实存在可见的旋转,所以似乎RotateAnimation()不会影响getRotation()返回的值。
那么如何在按下按钮后验证图像是否已旋转?
如果重要,我正在使用Robotium进行这些测试。
更新:我现在正在使用robolectric进行测试(单元测试),行为(毫不奇怪)同样如此。
更新2 :此回答https://stackoverflow.com/a/4213493/2160877解释了为什么会发生这种情况。