学习《QTP自动化测试进阶》第15章 –使用QTP测试Web对象
加载Web插件
先启动QTP,再启动浏览器,否则Web元素识别不了
最新版本QTP11支持的浏览器:
IE:6、7、8
Firefox:3.0.x、3.5、
QTP支持直接访问DOM(Document Object Model),可以通过DOM来访问HTML标签。例如:
On Error Resume Next
Set Doc = Browser("Google").Page("Google").Object
' 循环获取Page中的所有对象
For Each Element In Doc.all
TagName = Element.TagName ' 获取标签名
InnerText = Element.innerText ' 获取inner text
' 把信息写入测试结果
Reporter.ReportEvent 0, TagName, InnerText
Next
在测试WEB站点应用程序时,通常会碰到验证码的问题(尤其是论坛类的站点),对于这类问题,通常的做法是利用OCR(Optical Character Recognization,光学字符识别)技术,通过识别图片中的文字来获取验证码,但是这种方法可靠性不高,受到验证码图片混淆程度的影响。另外一种做法是在开发阶段由程序员屏蔽验证码功能,或者提供所谓的“万能验证码”。
还有另外一种解决方法,参考:
15.4 WEB页面测试案例分析2 – Discuz!验证码问题
其他学习资源:
1、SAFFRON框架是针对Web开发的一个简单的QTP测试框架原型,是Adam Gensler于06年写的,需要QTP 9.1版本以上:
http://blog.csdn.net/Testing_is_believing/archive/2008/08/28/2845530.aspx
2、《使用QTP进行WEB页面性能测试》:
http://blog.csdn.net/Testing_is_believing/archive/2010/02/02/5280103.aspx
3、《QTP & DOM》:
http://blog.csdn.net/Testing_is_believing/archive/2010/01/08/5161739.aspx
4、《QTP访问DOM的方法》:
http://blog.csdn.net/Testing_is_believing/archive/2008/03/09/2159089.aspx
5、《利用QTP在WEB应用程序上进行简单的猴子测试》:
http://blog.csdn.net/Testing_is_believing/archive/2010/01/07/5153807.aspx
6、《扩展QTP的WebTable测试对象》:
http://blog.csdn.net/Testing_is_believing/archive/2010/01/07/5153656.aspx
7、《QTP的Register New Browser Control工具》:
http://blog.csdn.net/Testing_is_believing/archive/2008/07/01/2601073.aspx
8、《在QTP中列举当前打开的所有浏览器对象的函数》:
http://blog.csdn.net/Testing_is_believing/archive/2008/05/11/2434870.aspx
9、《在QTP中巧用WebTable对象的ChildItem方法进行测试》:
http://blog.csdn.net/Testing_is_believing/archive/2008/03/09/2160202.aspx
10、《TestCompelte与QTP在Web测试方面的比较》:
http://blog.csdn.net/Testing_is_believing/archive/2008/02/02/2079098.aspx
11、《Rad ComboBox for ASP.NET AJAX ( Telerik )》:
http://www.advancedqtp.com/knowledge-base/articles/environment-techniques-id15/web-id34/rad-combobox-for-aspnet-ajax-telerik/
12、《QTP测试Yahoo邮箱》:
http://blog.csdn.net/Testing_is_believing/archive/2010/03/16/5384474.aspx
13、relevantcodes.com的《Automating GMail with QTP》这篇文章详细介绍了如何用QTP进行Gmail邮箱的自动化测试:
http://relevantcodes.com/automating-gmail-with-qtp/
14、relevantcodes.com的《QTP: Working with Multiple Browser Applications》这篇文章介绍了如何测试多个浏览器窗口的情况:
http://relevantcodes.com/qtp-working-with-multiple-browser-applications-revised/
15、relevantcodes.com的《QTP: Synchronization for AJAX Applications》这篇文章介绍了如何封装一个AjaxUtil对象来统一处理等待AJAX数据加载的问题:
http://relevantcodes.com/qtp-synchronization-for-ajax-applications/