我想创建一个测试(类似于机器人/硒测试)来测试我的键盘服务布局的不同配置。
当键盘作为服务运行时,robotium无法直接测试它。相反,我在服务中创建了一个活动来测试键盘。键盘在单独的窗口中运行,因此robotium无法看到它的视图。
我的问题是:是否有一个能够测试输入法的框架?
答案 0 :(得分:0)
无法确定,但您可能想尝试使用Nativedriver(http://code.google.com/p/nativedriver/)的功能,我发现它比Robotium更具灵活性,但设置起来有点困难。
您需要在应用中添加server-instrumentation.jar
库以及其他一些必需品,如下所示:http://code.google.com/p/nativedriver/wiki/AndroidMakeAnAppTestable。您可以轻松地分叉服务器检测代码,以便为其功能添加更多丰富功能。我发现自己这样做是为了简单的事情,比如通过提示更容易找到文本框而不是资源ID。 如果您发现内置功能不允许测试键盘,那么可以添加该功能,然后为我们所有人提交代码!
我非常喜欢Nativedriver方法只使用vanilla JUnit测试而不是Android JUnit测试,为您提供了许多其他适用于JUnit的工具(例如Cucumber的Java端口)但是没有适合Android JUnit测试模型。
您可能会发现,在基于Nativedriver的JUnit测试用例结束时活动未被杀死的事实很好,特别是当您正在编写测试并且正在尝试记住用户界面中的下一步操作。
答案 1 :(得分:0)
您可以尝试按下该位置,因为这是显示的位图。这更像是您开发方法UI的方式。