在进行Android用户界面测试时打开/关闭位置

在进行Android用户界面测试时打开/关闭位置,android,android-testing,android-location,ui-testing,Android,Android Testing,Android Location,Ui Testing,我正试图根据要测试的内容打开或关闭设备的位置 我已经研究过了,但结果发现我不能使用它,因为: Test Butler helper应用程序需要一个带有股票Android的模拟器图像,否则它不会安装,因此它不会与非股票模拟器图像一起工作,例如带有Google API或Google Play的图像!及 我正在我的应用程序中实现谷歌地图等等,谷歌API和谷歌play都在我的设备上,所以这看起来像是导致了错误崩溃,对我来说不是一个解决方案 问题:在测试前打开或关闭位置时,我应该注意什么?您必须检查位置是

我正试图根据要测试的内容打开或关闭设备的位置

我已经研究过了,但结果发现我不能使用它,因为:

Test Butler helper应用程序需要一个带有股票Android的模拟器图像,否则它不会安装,因此它不会与非股票模拟器图像一起工作,例如带有Google API或Google Play的图像!及

我正在我的应用程序中实现谷歌地图等等,谷歌API和谷歌play都在我的设备上,所以这看起来像是导致了错误崩溃,对我来说不是一个解决方案


问题:在测试前打开或关闭位置时,我应该注意什么?

您必须检查位置是否已启用,并且仅在未启用时启用它

您可以检查位置是否已启用,如下所示:

public boolean isLocationEnabled(上下文){
int locationMode=0;
字符串位置提供者;
试试{
locationMode=Settings.Secure.getInt(context.getContentResolver(),Settings.Secure.LOCATION\u MODE);
}catch(设置NotFound异常){
e、 printStackTrace();
返回false;
} 
返回位置模式!=Settings.Secure.LOCATION\u MODE\u OFF;
} 

如果上面的返回值为
false
,则您可以执行此操作。然后做你的“测试”。

遗憾的是,这不是我想要的。因为它要求我在进入测试时知道位置是否启用,然后在位置关闭或更糟的情况下添加Espresso clicks以启用gps,它将抛出一个错误,因为找不到单击,如果位置打开,它将停止测试。那么,是否有一些框架/库可以通过在进入测试之前启用它来帮助我@HB.
那么,是否有一些框架/库可以帮助我在进入测试之前启用此功能?
您必须检查位置是否已启用,并且仅在未启用时启用它。然后你可以运行“测试”。啊,是的,明白了。我的坏,那么我有点希望更容易,谢谢你的解决方案,如果你想回答这个问题,我给你正确的答案!