51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 5761|回复: 22
打印 上一主题 下一主题

[原创] QTP+在测试outlook遇到的问题?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-12-21 10:10:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
问题:
我在测试OUTLOOK中测试时:
录制:输入收件人——主题——内容——点击"发送"

回放时:只输入了收件人。无法自动写出"主题""内容",也无法自动点击"发送"按钮。这是怎么回事?

我在查看录制的脚本时发现,主题里有我测试时输入的数据,而无内容数据。请高手指教。谢谢
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-12-21 10:28:13 | 只看该作者
Function SendMail(SendTo, Subject, Body, Attachment)
    Set ol=CreateObject("Outlook.Application")
    Set Mail=ol.CreateItem(0)
    Mail.to=SendTo
    Mail.Subject=Subject
    Mail.Body=Body
    If (Attachment <> "") Then
        Mail.Attachments.Add(Attachment)
    End If
    Mail.Send
    ol.Quit
    Set Mail = Nothing
    Set ol = Nothing
End Function

这个是我在帮助文档里找到的关于发送邮件的例子,希望能对你有点帮助。
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2007-12-21 10:48:30 | 只看该作者
谢谢jinsen,可是这段脚本我应该放在我测试脚本的哪个位置呢?我主要侧重于黑盒测试,白盒测试还不懂。
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2007-12-21 14:38:36 | 只看该作者
其实这个Function已经囊括了你刚才所说的所有的步骤了:
Set ol=CreateObject("Outlook.Application") '//创建Outlook对象
Set Mail=ol.CreateItem(0) '//新建一个Mail
Mail.to=SendTo '//你所要送信的地址
Mail.Subject=Subject '//信的主题
Mail.Body=Body '//信的内容
If (Attachment <> "") Then '//是否要添加附件
   Mail.Attachments.Add(Attachment) '//添加附件
End If
Mail.Send '//发信
ol.Quit '//退出
Set Mail = Nothing '//清空对象
Set ol = Nothing '//清空对象

你只需要新建一个Test,把这个Function拷贝进去。然后,传入参数并调用它就可以了。
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2007-12-21 15:19:07 | 只看该作者
谢谢jinsen 我试一下吧
回复 支持 反对

使用道具 举报

该用户从未签到

6#
 楼主| 发表于 2007-12-21 15:31:21 | 只看该作者
刚刚测试了一下jinsen的脚本,我还是不会用。不过非常感谢他。

我想知道的是为什么会出现这种情况:回放时:只输入了收件人。无法自动写出"主题""内容",也无法自动点击"发送"按钮。这是怎么回事?

我想qtp应该可以不依赖测试人员编写的脚本去掉用它未完成的任务,可能是我们的设置不对还是怎么回事?
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2007-12-21 15:46:37 | 只看该作者
请问出错的提示信息是什么?
回复 支持 反对

使用道具 举报

该用户从未签到

8#
 楼主| 发表于 2007-12-21 15:57:14 | 只看该作者
就是在回放脚本的时候,输入了收件人地址以后,光标停留在标题处,一直没有响应。然后我就只能停止回放了。
回复 支持 反对

使用道具 举报

该用户从未签到

9#
 楼主| 发表于 2007-12-21 16:02:24 | 只看该作者
我想把现象抓图放下来,可是我不知道怎么放图片,请指教!
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2007-12-21 16:04:52 | 只看该作者
先等他出现出错信息,看看是什么
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2007-12-21 16:05:21 | 只看该作者
把录制的代码贴出来看看
回复 支持 反对

使用道具 举报

该用户从未签到

12#
 楼主| 发表于 2007-12-21 16:07:46 | 只看该作者
好的,谢谢,我马上把代码贴出来,我想问一下怎么贴图片,请教我一下。
回复 支持 反对

使用道具 举报

该用户从未签到

13#
 楼主| 发表于 2007-12-21 16:14:01 | 只看该作者
这是expert view 内容:
Window("Outlook Express").WinToolbar("ToolbarWindow32").Press "创建邮件"
Window("新邮件").WinObject("myjackyang@166.").Type "myjackyang@166."
Window("新邮件").WinObject("myjackyang@166.").Type  micBack
Window("新邮件").WinObject("myjackyang@166.").Type  micBack
Window("新邮件").WinObject("myjackyang@166.").Type "3.com"
Window("新邮件").WinObject("RichEdit20W").Click 31,20
Window("新邮件").WinObject("RichEdit20W").Click 33,12
Window("hello").WinObject("hello").Type "hello"
Window("hello").WinToolbar("ToolbarWindow32").Press "发送"

下面是运行结果的报错内容:

RichEdit20W The statement contains one or more invalid function arguments. Failed 2007-12-21 - 15:42:59

RichEdit20W Object's physical description:
window id = 1004
regexpwndclass = RichEdit20W
Warning 2007-12-21 - 15:42:59

以上是脚本代码和运行结果的出错提示
回复 支持 反对

使用道具 举报

该用户从未签到

14#
发表于 2007-12-21 16:14:31 | 只看该作者
我试了下,是这么个情况:
outlook中发送新邮件,在你输入主题后,整个窗体的窗体名字会变成主题名,也就是说窗体对象是动态的,那么当你回放时,窗体名还是叫“新邮件”,自然就找不到这个对象了。。
回复 支持 反对

使用道具 举报

该用户从未签到

15#
发表于 2007-12-21 16:16:34 | 只看该作者
要解决的话,可以尝试在对象库中修改窗体对象的名字,用正则表达式实现窗体名字参数化
回复 支持 反对

使用道具 举报

该用户从未签到

16#
 楼主| 发表于 2007-12-21 16:17:03 | 只看该作者
那应该怎么解决这个问题?谢谢
回复 支持 反对

使用道具 举报

该用户从未签到

17#
 楼主| 发表于 2007-12-21 16:23:36 | 只看该作者
太复杂了,谢谢你"美杜莎的瞳孔",正则表达式我都还不会用,但我知道应该怎么去解决这个问题了。
回复 支持 反对

使用道具 举报

该用户从未签到

18#
发表于 2007-12-21 16:28:23 | 只看该作者
不客气哈,能解决就好
回复 支持 反对

使用道具 举报

该用户从未签到

19#
发表于 2007-12-21 16:35:55 | 只看该作者
说说怎么解决吧。我也很想知道。
回复 支持 反对

使用道具 举报

该用户从未签到

20#
发表于 2007-12-29 11:34:04 | 只看该作者
怎么没有了,我也很想知道了。:
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-9-29 12:32 , Processed in 0.112423 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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