MySQL降龙十八掌,第六掌内容:利涉大川之MySQL索引的使用与优化(附含MySQL8.0隐藏索引),了解详情>>
0

我的帖子

个人中心

设置

  发新话题
获奖名单公布

940935736,bobcici

恭喜以上获奖用户,请各位于2016年11月16日前回复获奖短消息告知邮寄信息。未在规定时间内回复的用户,将视为自动放弃奖品。

PS:本次由于很多朋友的回答都是抄袭内容,所以未获奖。希望大家可以坚持原创,多动脑哦~~感谢大家的支持!


——————————————————————
Android自动化测试是终端不断升温的一个热门话题。在日常的开发中,尤其是App开发,因为不像Web端那样出错以后可以热更新,App开发对软件质量有更高的要求。所以App的开发者一定要学会自己测试自己的代码、测试自己的App,对自己负责,对自己开发的产品负责~

答题赢书,同时还可看到 腾讯科技高级测试工程师 盛娟 对问题的解答哦~
奖品:技术图书《腾讯Android自动化测试实战》
抢鲜试读>>>


活动时间:2016年10月21日--2016年11月7日

活动规则
1、针对以下3个问题,回帖给出你的答案;
  • a. 业务流程比较复杂的功能,例如涉及后台数据库的数据更新的,如何设计自动化测试用例?
  • b. Appium框架怎么模拟滑动的手势
  • c. Robotium有时抓取控件是上一层的,不是很稳定,有什么好的方法吗?
2、回帖后查看专家解答;专家介绍↓


专家解答
本帖隐藏的内容需要回复才可以浏览

获奖规则 本次图书奖品由『机械工业出版社华章公司』提供
活动结束后,选取 5位幸运用户,奖励《腾讯Android自动化测试实战》图书一本。来看腾讯面对亿级App(QQ浏览器、应用宝等)是如何应对的



图书简介
本书是Android自动化测试领域的里程碑著作,由腾讯最早专注APP测试的腾讯移动品质中心(TMQ)官方出品,系统总结了该团队7年多来在QQ浏览器、应用宝等多款亿级APP的自动化测试中总结出来的方法与经验。旨在帮助测试人员借助本书内容和开源工具,结合项目实际需求,轻松开展自动化测试工作,搭建适用的自动化测试体系。

等不及了,现在就要这本书>>



1、针对服务端需要配置、更新类的用例,一种可以在服务端配合,通过白名单形式,即测试机访问到的总是指定的数据。另一种在服务端开通修改数据库的接口,用例在需要修改数据库时,通过发送http接口请求完成数据库的更新操作。
2、滑动事件可以使用TouchAction里的方法,从某点滑到某点,然后放开
from appium.webdriver.common.touch_action import TouchAction
TouchAction(driver).press(x=590,y=700).move_to(x=50,y=700).release().perform()
3、获取控件,该控件如果在当前界面有唯一的资源id,那么通过id就可以获取。如果有多个id,则可以获取父节点中的控件,再往下获取。
如果当前界面显示了,但获取的仍是上一个界面的控件,需要看看等待时间是否合适,或者获取到控件后根据控件的是否显示、坐标等来过滤

【求中啊啊,51CTO小助手,参加好几次了。。。一次没中】
本帖最近评分记录
  • 51cto_bbs 无忧币 +2 原创答案会更有优势哦 2016-10-21 16:12



很期待专家的解答,先看看专家这么解决。



51CTO论坛有移动端啦!扫码下载体验就送月会员哦!
支持十分好的活动



51CTO论坛有移动端啦!扫码下载体验就送月会员哦!
猜猜专家的答题



先看一下专家的解答



看到专家的回答,然后又回去看了看沙发的回答



1、针对服务端需要配置、更新类的用例,一种可以在服务端配合,通过白名单形式,即测试机访问到的总是指定的数据。另一种在服务端开通修改数据库的接口,用例在需要修改数据库时,通过发送http接口请求完成数据库的更新操作。
2、滑动事件可以使用TouchAction里的方法,从某点滑到某点,然后放开
from appium.webdriver.common.touch_action import TouchAction
TouchAction(driver).press(x=590,y=700).move_to(x=50,y=700).release().perform()
3、获取控件,该控件如果在当前界面有唯一的资源id,那么通过id就可以获取。如果有多个id,则可以获取父节点中的控件,再往下获取。
如果当前界面显示了,但获取的仍是上一个界面的控件,需要看看等待时间是否合适,或者获取到控件后根据控件的是否显示、坐标等来过滤。




我也来凑个热闹!!!!



不懂测试,前排看大神~



后前排看大神~



引用:
原帖由 惊魂甫定 于 2016-10-21 16:01 发表
1、针对服务端需要配置、更新类的用例,一种可以在服务端配合,通过白名单形式,即测试机访问到的总是指定的数据。另一种在服务端开通修改数据库的接口,用例在需要修改数据库时,通过发送http接口请求完成数据库的更新操作。
...
热切期待高颜值美女工程师的解读。



真诚盼望高颜值美女工程师的答疑



1、业务流程比较复杂的功能,例如涉及后台数据库的数据更新的,如何设计自动化测试用例?


这里的数据库更新指服务端,针对服务端需要配置、更新类的用例,一种可以在服务端配合,通过白名单形式,即测试机访问到的总是指定的数据。


另一种在服务端开通修改数据库的接口,用例在需要修改数据库时,通过发送http接口请求完成数据库的更新操作。





2、Appium框架怎么模拟滑动的手势


滑动事件可以使用TouchAction里的方法,从某点滑到某点,然后放开


代码如下:

final TouchAction gesture = new TouchAction(driver).press(startX, stratY)  
.moveTo(startX, stratY + height)  
.moveTo(startX, stratY + height + height)  
.moveTo(startX + width, stratY + height + height).release();  
gesture.perform();


3、Robotium有时抓取控件是上一层的,不是很稳定,有什么好的方法吗?


获取控件,该控件如果在当前界面有唯一的资源id,那么通过id就可以获取。如果有多个id,则可以获取父节点中的控件,再往下获取。


如果当前界面显示了,但获取的仍是上一个界面的控件,需要看看等待时间是否合适,或者获取到控件后根据控件的是否显示、坐标等来过滤





4、《腾讯Android自动化测试实战》的签字书评


http://dongfeng9ge.blog.51cto.com/9191243/1870594



5、 向作者和推荐序作者致敬


本书的作者盛娟是我校的杰出校友,我该叫她学姐,本书的推荐序作者朱少民教授是我最尊敬的软件测试外聘教师。在此向他们致以诚挚的敬意,并祝福他们今后笔走龙蛇、著作等身。







本帖最后由 东风玖哥 于 2016-11-8 13:21 编辑
谁多是历史,谁多是专家。大公司出来就是专家。
A  HA ......



1、针对服务端需要配置、更新类的用例,一种可以在服务端配合,通过白名单形式,即测试机访问到的总是指定的数据。另一种在服务端开通修改数据库的接口,用例在需要修改数据库时,通过发送http接口请求完成数据库的更新操作。
2、滑动事件可以使用TouchAction里的方法,从某点滑到某点,然后放开
from appium.webdriver.common.touch_action import TouchAction
TouchAction(driver).press(x=590,y=700).move_to(x=50,y=700).release().perform()
3、获取控件,该控件如果在当前界面有唯一的资源id,那么通过id就可以获取。如果有多个id,则可以获取父节点中的控件,再往下获取。
如果当前界面显示了,但获取的仍是上一个界面的控件,需要看看等待时间是否合适,或者获取到控件后根据控件的是否显示、坐标等来过滤



看看专家的解答



初来乍到、






1、业务流程比较复杂的功能,例如涉及后台数据库的数据更新的,如何设计自动化测试用例?
这个问题不仅限于Android,其他终端如iOS和HTML5等同理
方法一:在服务端配合,通过白名单形式,即测试机访问到的总是指定的数据。
方法二:在服务端开通修改数据库的接口,用例在需要修改数据库时,通过发送http接口请求完成数据库的更新操作。

2、Appium框架怎么模拟滑动的手势
通过模拟触摸坐标的方式来识别手势移动的位置,首先是起点的横、纵坐标,到下一个点的横、纵坐标……直到最后一个点的横、纵坐标,把各个点连接起来就是手势滑动的运行轨迹

3、Robotium有时抓取控件是上一层的,不是很稳定,有什么好的方法吗?
这个测试问题在Fragment和BaseAdapter中很常见,因为共用同一个id的控件太多,可以设置适当的等待时间或根据坐标而非id判断





本帖最后由 成续缘 于 2016-10-26 10:14 编辑
引用:
原帖由 51cto活动 于 2016-10-21 14:51 发表
Android自动化测试是终端不断升温的一个热门话题。在日常的开发中,尤其是App开发,因为不像Web端那样出错以后可以热更新,App开发对软件质量有更高的要求。所以App的开发者一定要学会自己测试自己的代码、测试自己的App,不 ...
很想学习学习



‹‹ 上一贴:Be an interviewer   |   下一贴:用户最讨厌的3种UI设计方法 ››
  发新话题
快速回复主题
关于我们 | 诚聘英才 | 联系我们 | 网站大事 | 友情链接 |意见反馈 | 网站地图
Copyright©2005-2018 51CTO.COM
本论坛言论纯属发布者个人意见,不代表51CTO网站立场!如有疑义,请与管理员联系:bbs@51cto.com