手机自动化测试主要包含两个方面:
1:界面跳转逻辑(点击是否有崩溃)
2:接口测试(后台接口返回是否正常)
效果图:
一:工具安装
以下两个工具:
二:使用方法
安装好后在Appium中点击启动方法,可以看到当前手机的连接ip指向本机,启动应用程序的时候需要用到.其他就是一些运行时候的log日志.
> info: Appium REST http interface listener started on 127.0.0.1:4723
=======================================================================
然后就是RIDE工具,我们可以先见一个project,然后new suite,然后引用相关的库,最后new test case.
(1)界面测试
上图中左侧就是项目结构,右侧是具体实现和相关引用
我们可以在app关键字.txt中写基类库,然后在其他地方调用就好,可以通过右侧的Resource引用.
单击Ctrl可以查看具体使用方法,根据具体的实现填入需要的参数值.
(2)接口测试
在接口测试中填入需要传值的参数,通过${body}中的值验证是否正常返回.
另外还有对文件的处理包括:file down和Upload File And Form.这里就不一一举例.
查看错误信息可以单击Run界面下的log通过浏览器定位到.
三:常见问题
这里举一个例子就是界面的点击问题,看图:
一般情况下我们底部都是用的是FragmentTabHost或者是tabpagerIndector,这样做的好处就是可以动态的添加子项而不牵扯到布局,那么问题来了, 我们需要点击的中间加号就是需要根据布局找id的值的,像底部左边和右边的点击操作还好做,可以根据text的值来直接点击,中间加号没有值就是一个图片,这个时候我们借助ddms工具来看看布局
我们可以根据ImageView下方的id值来判断是哪个id,但是平行的三个子项的id是同一个值,这个时候网上还有一个解决方式就是用相对的路劲来做点击事件的处理,一层层定位,搞不好就出错了,这里采用坐标点击的方式来处理,在531,1846和549,1864中取一个中间值来,也可以用shell验证.
=============================================================
http://blog.csdn.net/mentgmery1/article/details/41645427
如:
WebDriverException: Message: A new session could not be created. (Original error: comXXXXX/.ui.Splash never started. Current: comXXXXX/.ui.MainActivity)
解决方案:.
重新插拔USB接口.