如何让Robolectric选择一个特定的微调项目

Rit*_*ala 6 android robolectric android-testing

我是Robolectric的新手并且遇到了障碍.我有一些自定义事件,在spinner中选择一个项目时触发,我想用robolectric测试它.我看到ShadowSpinner类提供了诸如stateSpinner.clickFirstItemContainingText之类的辅助函数来单击特定项.我用适当的值填充我的微调器,我测试打印出每个项目

 for (int i = 0; i < spinner_items.length; ++i) {
            spinner_items[i] = (String) spinner.getAdapter().getItem(i);
        }
 System.out.println("Spinner Items "
                + Arrays.asList(spinner_items).toString());
Run Code Online (Sandbox Code Playgroud)

但是当我使用clickFirstItemContainingText和其中一个popoulated值时,我得到一个IllegalArgumentException.没有找到包含上述代码奇怪的测试的项目表明特定值确实存在.

任何帮助将不胜感激

Dan*_*iel 5

我无法让Robolectric与纺纱厂合作.问题是,旋转器中列表项的视图将不会与所选的视图存在.这可以看作spinner.getChildCount()将始终返回1.只需打电话spinner.setSelection().