Cafe
Cafe copied to clipboard
交流 - Cafe/Travel的一些修改
ju00 [email protected] 14:42 (26分钟前)
发送至 我 您好: 不知道您是否还在关注Cafe,打扰了。 最近我在使用Travel做测试,修改了一些东西,想跟您讨论一下,看看是否存在问题。
1.关于level。
看代码我理解这个量是用于记录Activity深度。麻烦的地方在于实际APP中,Activity的恢复不光是用goback,还有界面上的“<”等,所以保持这个量的正确很难。由于没有什么好的解决办法,我舍弃了这个量,改用判断连续出现退出信息来退出Travel测试了,这个方法看起来不太美,不知道是否有好一点的方法?
2.关于“容器”型view
Travel是用界面坐标均分的方法,如果其中包含的view大小不一,可能会重复点击同一view。这里修改成抛弃外层容器,只取内部view进行操作,为了避免冗余,同一个最内层容器只操作一个view作为代表。这里我有点不太理解为什么Travel对容器的处理是均分坐标点击,是有什么特殊需求吗?
以上两点就是最近对Travel的一些想法和修改,修改后的Travel确实更适用于我的测试了。但因为被测产品的不同,我的想法很可能是局限和不正确的,所以想和您交流一下。
祝Travel越来越好。
此致
敬礼 马兆文
感谢您的关注。 因为工作原因,已经好几年没碰过自动化测试了。我尝试回答一下你的问题: 1.level不是activity的层级,它指的是operation的层级,operation就是一个可操作的动作。如果A operation被执行后衍生出更多的operation,那么这些衍生的operation都是A的下级,也就是level+1 2.确实存在外层容器和内层view重复的问题,但是有些case是只有外层容器绑定了事件,所以如果一律抛弃的话就会漏掉一些操作。其实我也没有完美的办法,你可以继续研究一下:)
另外,那段代码是2011年写的,如果可以重来的话,我会好好打磨一下Traveler,并把原理、抽象出的概念写在注释上,并尽量详细,而不是现在这样只扔一坨代码出来-____-