2

我最近开始关注Android上的辅助功能测试自动化。网络上没有太多的信息。 有没有人探讨过这个或正在做这个?如果是这样,你能分享你的想法/方法吗?Android上的辅助功能测试自动化

似乎Android的uiautomator依赖于辅助功能的工作,但它不支持测试辅助功能。如果它依赖于辅助功能,是否意味着像可访问标签这样的基本验证存在等,可以通过使用uiautomator执行UI测试来完成?

这是一个新的领域,所以任何信息都可能有帮助。

+0

您可以使用linting工具验证内容描述,请参阅http://developer.android.com/tools/help/lint.html。但是,大多数辅助功能问题都是交互问题,只能在交互式测试中找到。 – alanv

+0

感谢您将我指向linting工具,但它是用于查找源代码中的问题。这肯定会很有用,但我主要是在UI级别上寻找某种形式的自动化测试,我无法访问源代码。 – Kshah

+0

您可以查看我发布到您的其他问题的答案,我试图更详细地介绍: http://stackoverflow.com/a/35806985/799162 – moxi

回答

0

这是一个great introduction在Android的可访问性测试。它基本上可以归结为:

  • 手动Accessibility Scanner
  • 打开话语提示测试你的视觉问题的应用程序和手动测试您的应用程序,以发现听力障碍的问题
  • 要查找字体缩放和布局问题,使用Large Text
  • 绝对皮棉检查,但要确保“图像无contentDescription”设置为严重性=错误
  • 任何/你发现或者被再次发生,写一个咖啡测试时可达性是失败的所有可访问性问题未来违反起诉
  • 对于自动化,如果听力受损功能是必需条件,您还需要考虑如何执行某些屏幕构件和音频分析的视觉验证。

此外,我建议您观看关于无障碍测试的this presentation from GTAC 2015,以获取有关该主题的某些重要背景。

对于检查可访问性的自动化测试,我非常推荐从可以在跨屏幕共享的元素(菜单,布局,主题,自定义控件)中标识的问题开始。虽然他们不会捕捉偶尔会弹出的一次性错误,但他们会解决在您的应用中随处可见的问题,如果您愿意,可以按照“按数量确定优先级”方法。另外,如果您的团队使用Android Studio,那么您肯定希望能够推出能够编写驻留在代码中的Espresso测试的功能。质量保证是发展过程的一部分。访问您的测试所在的子文件夹不应该是一个问题,除非有一些法律博洛尼亚来处理。例如,将'androidTest'文件夹拆分为一个submodule,其中您有作为测试者的权限,但只能读取其他应用程序的权限,以便您可以编译和运行自己。如果你正在编写Appium测试,可能很难让你的开发团队在构建过程中将它们作为他们自己的BVT /烟雾测试过程的一部分来运行,但这并非前所未闻。

至于visual analysisaudio injection/confirmation,这些是高级功能,您可能需要使用某些服务或商业工具。

祝你好运!