51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1327|回复: 1
打印 上一主题 下一主题

[原创] 在脚本中怎么访问TD中作为附件的数据文件?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2009-3-12 11:28:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我自己解决了。参见:http://bbs.51testing.com/thread-143038-1-1.html



用vbScript的文件机制打开存放在TD中的文件,文件的路径怎么写啊?
虽然ExecuteFile可以用"[QualityCenter]"来定位,但是这次要打开的不是脚本,而是普通的数据文件,该怎么打开呢?

'代码如下

'这一句会报告文件找不到
MsgBox FileContent( "[QualityCenter] Subject\Test\TestData.txt" )

Function FileContent( filePath )
        '打开文件
        Const ForReading = 1, ForWriting = 2
        Dim fso, f
        Set fso = CreateObject("Scripting.FileSystemObject")
        Set f = fso.OpenTextFile(filePath, ForReading, False, True)

        '读取内容
        If Not f.AtEndOfStream Then        '一定要加判断,否则当文件为空时会报错“输入超出了文件尾”
                FileContent = f.ReadAll
        End If
        MsgBox FileContent

        '关闭文件
        f.Close
        Set f = Nothing
        Set fso = Nothing
End Function

[ 本帖最后由 lyghe 于 2009-3-13 14:31 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2009-3-12 11:45:49 | 只看该作者
找到一个类似的帖子:请教有关QTP中脚本读取QC附件的问题
http://bbs.51testing.com/thread-133586-1-8.html
提出了一个方法:
dim CurrentTest
set CurrentTest = QCUtil.CurrentTest
Set attf = CurrentTest.Attachments
Set attList = attf.NewList("")
Set att = attList.Item(1)
If att.Type = TDATT_FILE Then
  att.Load True, "c:"
  str = att.FileName
  Msgbox str
End If
可以访问当前测试下的附件,而且访问的是在本地临时文件夹中的副本。

个人猜想,既然QC是通过IIS发布的,那么肯定不可能直接访问QC中的附件,只能访问本地临时副本。

现在要解决的问题是:如何访问任何位置的附件的临时副本?

[ 本帖最后由 lyghe 于 2009-3-12 11:52 编辑 ]
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-9 05:16 , Processed in 0.063649 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表