qtp 检测javascript错误??
请问qtp 是否可以检测网页的javascript运行错误呢?如果可以,怎么检测?如果不行,是为什么?
麻烦大家知道的都来给个解释嘛
谢谢 你说的javascript运行错误是什么?是指IE右下角的那个错误信息吗?如果是的话,你可以获取IE对象的statueText属性,这个属性存储的是IE运行时的文本信息,就是你双击那个错误图标能看到的信息。然后把这个信息和你设置的预期值进行比较就可以了。不知道这是不是你所说的“检测”的含义 我的意思是,哎,翻译不出来。。就是下面这句话。。
See the page loads successfully without any javascript errors.
另外,就算是IE左下角显示了错误,也不知道是不是js错误啊,vbscript也会显示啊 不太明白你想干什么,难道你是想检测界面代码中javascript的代码是否存在编码上的错误吗?或者你就举一个典型的应用场景吧 就是如何检测页面登入的时候,javascript没有运行错误。。 internet 选项->高级->选择项“显示每个脚本错误通知”打勾
这样有js 错误就会弹出提示框了
然后根据提示框判断 原帖由 风雪夜归人 于 2009-2-27 10:23 发表 http://bbs.51testing.com/images/common/back.gif
就是如何检测页面登入的时候,javascript没有运行错误。。
可能是我理解的不到位,楼主你这么描述我还是很糊涂。如果有人问你这样的一个问题:我想知道登录以后,首页的结果展示是否正确,相信你也没法回答,因为“正确”这个词属于一个不明确的定义。除了提问的人,其他人未必能明白什么样的首页才是正确的,对吧。
我现在的问题也是一样的,不知道你想如何去界定运行时错误是javascript的(不知道这么说是否准确)。或者这样问题:假设没有自动化测试,也没有脚本,我们是纯手工测试,那么我们是如何判断javascript是否有运行错误的?换句话说,“javascript没有运行错误“这个测试用例的判断标准是什么? 是下面图中的样子吗?
如果我不想弹出对话框,想直接通过浏览器的某些属性获得怎么办啊?
statueText 属性并不是我想象的那样。。如图
另外,我知道楼上的意思了,判断脚本运行错误就是看ie左下方有没有运行错误的提示。。
关键现在的问题是不知道ie的哪个属性是关于此的。我研究下,实验下~~ 晕,不能显示图哦?
我已经知道怎么做了,可是,browser的statue text属性为空。。
helius 的方法我试了,可以,但是如果弹出很多提示的话,会非常烦的,我想直接从ie的属性里面找,正在试验
谢谢大家~~~我刚开始学qtp,要向大家多多请教才是王道~~
[ 本帖最后由 风雪夜归人 于 2009-2-27 10:53 编辑 ] 有什么好办法找到的话 共享一下
同样困扰
up 就是两种方法合一咯。
嘿嘿,先选择6楼你的做法,然后取值,等我录个嘛 这个是我自己写的,有js错误的html
<html>
<head><title>test's test</title>
<script language="javascript">
function a()
{
alert("aa
}
a();
</script>
</head>
<body>
<h1>Just a Test</h1>
</body>
</html>
然后我将其保存为b.html放在桌面,下面是我录制的qtp
Dim myStr
SystemUtil.Run "C:\Program Files\Internet Explorer\IEXPLORE.EXE","","C:\Documents and Settings\server","open"
ConfigMyIE
Browser("Browser").Navigate "C:\Documents and Settings\server\Desktop\b.html"
myStr = Browser("Browser").WinStatusBar("msctls_statusbar32").GetItemProperty(statuebartext,"text") 'print the text
Browser("Browser").Window("Internet Explorer").Page("Internet Explorer").WebButton("OK").Click 'Press button OK
Browser("Browser").Page("Page").Sync 'The page
ConfigMyIE
IfmyStr = "Error on page." Then
MsgBox "Script Error"
Reporter.ReportEvent micFail ,"Script " , "error"
Else
MsgBox "All Done"
Reporter.ReportEvent micPass,"Script","No Error"
End If
Browser("Browser").Close 'Close the browser
Sub ConfigMyIE
'config my IE
Browser("Browser").WinToolbar("ToolbarWindow32").Press "&Tools"
Browser("Browser").WinMenu("ContextMenu").Select "Internet Options..."
Browser("Browser").Dialog("Internet Options").WinTab("SysTabControl32").Select "Advanced"
Browser("Browser").Dialog("Internet Options").WinTreeView("Settings:").Select "Browsing;Display a notification about every script error"
Browser("Browser").Dialog("Internet Options").WinTreeView("Settings:").Activate "Browsing;Disable script debugging"
Browser("Browser").Dialog("Internet Options").WinButton("OK").Click
End Sub
我是在警告对话框存在的时候取的statuebartext的值,这样做的原因是我经常碰到有错误但是显示为Done的情况,为了判断简单就这样取了。
页:
[1]