51Testing软件测试论坛

标题: 如何使用QTP检测网站下载图片成功? [打印本页]

作者: cyrcici81    时间: 2008-7-28 10:29
标题: 如何使用QTP检测网站下载图片成功?
现在 有一个网站  要从网站上下载一个图片到本地,用QTP检测是否成功。我不知道如何设计这个测试点呀,请各位指点,我是刚开始学QTP  希望大家多多帮忙,在线等待,不胜感激

[ 本帖最后由 cyrcici81 于 2008-7-28 10:30 编辑 ]
作者: zte_boy    时间: 2008-7-28 10:36
用Microsoft.XMLDOM对象和ADODB.Stream能实现远程文件传输
作者: haihai1005    时间: 2008-7-28 10:59
我 认为 你可以设置一个图片检查点,然后执行脚本。脚本执行完后,再看有多少图片下载下来就可以了
作者: cyrcici81    时间: 2008-7-28 11:10
一楼  能将方法在具体说说吗?先谢谢了
二楼  如果将图片现在到本地桌面上,用图片检查点能识别到吗  并且能正确显示这个图面 ,谢谢,我先试试
谢谢你们帮我想主意
作者: zhuyuancan    时间: 2008-7-28 17:35
下载完成后可以检查本地相关目录下是否有这张图片也可以吧
作者: 假装不在    时间: 2008-7-28 21:00
告诉你个小秘诀吧....
在加载完与否的图片,用QTP可以得到图片的大小。加载完的图片大小不会等于0。
嘿嘿,其他人我还不告诉他呢....
作者: 假装不在    时间: 2008-7-28 21:01
我猜不出2楼的方法这么写是怎么实现的,每次都摸不到边际...
用最简单的方法,实现最复杂的需求。
作者: zte_boy    时间: 2008-7-29 09:50
这个功能无非两个测试点
1)如何从远程下载文件到本地
2)如何验证文件下载的正确性
我帮你写个1的脚本,至于如何验证,你自己可以考虑一下,这个就不难了
Function GetRemoteFiels(RemotePath, LocalPath, FileName)
Dim strBody
Dim FilePath
  On Error Resume Next
strBody = GetBody(RemotePath)
if Right(LocalPath, 1) <> "\" then LocalPath = LocalPath & "\"
FilePath = LocalPath & GetFileName(RemotePath, FileName)
if SaveToFile(strBody, FilePath) = true and err.Number = 0 then
   GetRemoteFiles = true
else
   GetRemoteFiles = false
end if
End Function

Function GetBody(url)
Dim Retrieval

  Set Retrieval = createObject("Microsoft.XMLHTTP")
  With Retrieval
    .Open "Get", url, False, "", ""
    .Send
    GetBody = .ResponseBody
  End With
  Set Retrieval = Nothing
End Function

Function GetFileName(RemotePath, FileName)
Dim arrTmp
Dim strFileExt
  arrTmp = Split(RemotePath, ".")
  strFileExt = arrTmp(UBound(arrTmp))
  GetFileName = FileName & "." & strFileExt
End Function

Function SaveToFile(Stream, FilePath)
Dim objStream
On Error Resume Next
  Set objStream = createObject("ADODB.Stream")
  objStream.Type = 1
  objStream.Open
  objstream.write Stream
  objstream.SaveToFile FilePath, 2
  objstream.Close()
  Set objstream = Nothing
if err.Number <> 0 then
   SaveToFile = false
else
   SaveToFile = true
end if
End Function
作者: zte_boy    时间: 2008-7-29 09:51
#7楼的,我有那么不着边际么?
作者: 假装不在    时间: 2008-7-29 10:02
假装没看到,逼你出手 而已。




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2