提高Web 2.0自动化测试脚本的稳定性之一
http://blog.sina.com.cn/s/blog_406a3c480100g18n.htmlWeb 2.0 (本文针对Ajax)相对传统Web应用的一个区别是,整页的载入变得很少,代之以在javascript线程里异步提交数据和获得更新。
在Web2.0之前,测试工具通过判断页面的载入是否完成来判断一个动作十分完成,现在这个方法不灵了。
一个简单的办法是在测试脚本中插入sleep语句,来等待ajax动作的完成。但是ajax动作所需要的时间,随网络状况和服务器性能而变化。如果 sleep时间过短,会造成在页面动作完成之前就开始下一步测试动作,从而带来不应有的错误;反正,如果sleep时间过长,会浪费测试时间。而且,我们还需要随网络状况和服务器性能的变化,来调整sleep时间。
比较好的办法是去找一个标志,通过这个标志来判断动作是否完成。
比如刷新gmail收件箱的时候,网页上方正中央的“正在载入”就可以用来作为判断这个刷新是否完成的标志。
在选取第三方标志的时候,一定要注意这个标志真正能代表这个动作是否完成。
举个反例。某系统在网页下方有个事件记录的区域,每次动作完成,就会刷新,且只显示最后一条。在这里如果用这个最后事件的名称作为标志就是不合适的。因为你做重复性的动作的时候,这个标志就不能代表你的动作是否完成了。 说得在理 .....
页:
[1]