我有一个Android应用程序,权限很少,并且明确没有android.permission.INTERNET权限。
从ActivityInstrumentationTestCase2我想启动一个服务器,它将接收要对应用程序执行的测试命令。
使用ServerSocket会失败,因为Android会尝试在应用程序的上下文中创建套接字,而不是在检测中创建套接字。
可以这样做吗?
根据要求,这里有一些背景知识。
我参与测试自动化框架Calabash-Android
我们在检测中运行一个服务器,该服务器接收命令并与应用程序交互。我们希望能够在不要求开发人员设置互联网权限的情况下测试应用程序。 在我们测试任何应用程序而不修改应用程序之前,这是唯一缺少的部分。
可在此处找到有关架构的说明:http://blog.lesspainful.com/2012/03/07/Calabash-Android/
答案 0 :(得分:0)
要使用检测上下文而不是应用程序的上下文,请传递:
getInstrumentation()。getContext()