白驹过隙,顿时发现自己来淘宝,实习已满1个月了。在学习了很多业务知识的同时,开始了自动化测试脚本的编写。最近加入了1个大日常——B2B网页电话、电子传真,需要模拟网页电话订购流程,涉及订购、付款、页面校验和数据库校验。
在此过程中,遇到了如下4个问题,与大家分享,希望对以后的新人有所帮助和启发。
1. 页面上的文字校验。下图中被框中的文字部分都是可以被校验的,它们在对象库里所属的控件类型是“默认”,关键是selector的写法,写的不对就校验不到了。以蓝框下的“充值卡_20元”为例,根据toolbar的定位提示(深蓝色高亮),逐层往上,找到可以唯一标识的元素作为开头。此处,可行的写法是:div#type-list .period>li:eq(0) .row>label
2. 临时页面上的元素定位。红框标识的临时弹出的页面,在对象库里是不需要再创建新page的。要定义该页面上的元素,只需要在被覆盖的页面上定义即可。
3. 页面跳转时,需要重新定位到你要操作的页面。在我们的ruby脚本编写环境下有一个很好用的attach函数。原先在订购页面,点击“去支付宝付款”按钮后,就会进入支付页面,此时脚本中可以用如下的语句去attach一下,ie=AWatir::IEModel.attach(/tradeexprod.alipay/),以便程序正确定位到你要操作的页面。
4. 支付页面中Alipay Password控件的selector写法。对于红框标识的Alipay Password控件,用toolbar可能很难定位,你可以选择点击它附近的控件来找到它。还要注意的是,以前这种控件属于embed标签下的,但是现在都在object标签下了。正确的写法是object#password_ie ,以前的写法embed[id=password_noie]此处不适用。