记录阿里巴巴QA架构组成长点滴。2008年关键词为效率,技术,影响力!QA/测试架构师定义:开发和设计测试框架测试库;纵横全局的考虑产品的功能,设计复杂的测试系统;负责研发某一项特定的测试技术;为公司考虑如何提高测试效率。领导公司测试技术的发展和测试策略上的方向,关注整个公司的测试部门的问题,前瞻性的考虑未来的版本的测试策略和技术。测试架构师计划/设计测试平台,关注着产品的测试过程,提供咨询服务,影响到公司内的测试机构测试社区,以及开发机构等,对产品各个方面施加深远而正确的影响,最终提高整体软件质量。

用QTP获得HTML的TAG属性值并验证

上一篇 / 下一篇  2008-02-27 11:14:50 / 个人分类:自动化测试框架与实现

 

周一在讨论国际站自动化需求时,木兰问到我如何获得某tag属性值,

这里我们使用DOM(Document Object Model )编程技术来完成这一功能的检查。下面举个例子来说明一下:    在用户注册页面中,用户名、密码和确认密码三项的文字应为红色显示,下面的代码验证了“密码”为红色。

Set Elements = Browser("随时随地签单").Object.Document.all.tags("TD")
For each Element in Elements
  If Element.InnerText=“Password:" Then
    strhtml=Element.Innerhtml
    n=instr(strhtml,"color=read")
    If n<>0 Then
      Reporter.ReportEvent 0, Element.InnerText, "Text color is red!"
    End If
  End If
Next

    其中Element.Innerhtml的值为<FONT face="Arial, Helvetica, sans-serif" color=red size=2><B>Password:</B></FONT>, 可以看见color=red就是定义了文字的颜色为红色,所以我们在之后的代码中只要验证Element.Innerhtml中存不存在color=red就可以了。

    不是所有的html代码都是如上编写的,有的时候会把style单独存放在一个css文件中,然后在网页中调用,如<FONT class=redcode>Password:</FONT>,所以我们要根据实际取到的Element.Innerhtml值来编写后面的程序,这里就要验证Element.Innerhtml中存不存在class=redcode,即代码第五行改为 n=instr(strhtml,"class=redcode")。

    所以大家要根据代码的实际情况来编程验证,这里只提供了一种验证的方法。

    我也找到另外一种,紧供参考:

How to know color of an object
' Example:
Dim color
'Grey. Use "#000000" for black
color = "#999"
'Get the DOM object for the text
Set TxtObj = Browser("myBrowser").Page("myPage").WebElement("myWebElement").Object
retVal = FontColorCheckPoint ( TxtObj, color )

Function FontColorCheckPoint ( obj, vExpColour )
Dim vActualcolor, sReportStepName, sErrMsg

' get object's color
vActualcolor = obj.currentStyle.color
sReportStepName = "Custom Checkpoint ""Font Color"""
sMsg = "The expected color " & vExpColour & " was found"
'sErrMsg = "The expected color " & vExpColour & " was NOT found. Found " & vActualcolor & " instead."
sErrMsg = "The expected color " & vExpColour & " for the object " & Chr(34) & obj.innertext & Chr(34) & " was NOT found. Found " & vActualcolor & " instead."
If vActualcolor <> vExpColour Then
Reporter.ReportEvent 1, sReportStepName, sErrMsg
FontColorCheckPoint = False
Else
Reporter.ReportEvent 0, sReportStepName, sMsg
FontColorCheckPoint = True
End If

 


TAG: 自动化测试框架与实现

 

评分:0

我来说两句

日历

« 2022-01-18  
      1
2345678
9101112131415
16171819202122
23242526272829
3031     

数据统计

  • 访问量: 115061
  • 日志数: 163
  • 文件数: 1
  • 建立时间: 2008-02-26
  • 更新时间: 2008-12-10

RSS订阅

Open Toolbar