QTP+在测试outlook遇到的问题?
问题:我在测试OUTLOOK中测试时:
录制:输入收件人——主题——内容——点击"发送"
回放时:只输入了收件人。无法自动写出"主题""内容",也无法自动点击"发送"按钮。这是怎么回事?
我在查看录制的脚本时发现,主题里有我测试时输入的数据,而无内容数据。请高手指教。谢谢 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
这个是我在帮助文档里找到的关于发送邮件的例子,希望能对你有点帮助。 谢谢jinsen,可是这段脚本我应该放在我测试脚本的哪个位置呢?我主要侧重于黑盒测试,白盒测试还不懂。 其实这个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拷贝进去。然后,传入参数并调用它就可以了。 谢谢jinsen 我试一下吧 刚刚测试了一下jinsen的脚本,我还是不会用。不过非常感谢他。
我想知道的是为什么会出现这种情况:回放时:只输入了收件人。无法自动写出"主题""内容",也无法自动点击"发送"按钮。这是怎么回事?
我想qtp应该可以不依赖测试人员编写的脚本去掉用它未完成的任务,可能是我们的设置不对还是怎么回事? 请问出错的提示信息是什么? 就是在回放脚本的时候,输入了收件人地址以后,光标停留在标题处,一直没有响应。然后我就只能停止回放了。 我想把现象抓图放下来,可是我不知道怎么放图片,请指教! 先等他出现出错信息,看看是什么 把录制的代码贴出来看看 好的,谢谢,我马上把代码贴出来,我想问一下怎么贴图片,请教我一下。 这是expert view 内容:
Window("Outlook Express").WinToolbar("ToolbarWindow32").Press "创建邮件"
Window("新邮件").WinObject("myjackyang@166.").Type "myjackyang@166."
Window("新邮件").WinObject("myjackyang@166.").TypemicBack
Window("新邮件").WinObject("myjackyang@166.").TypemicBack
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
以上是脚本代码和运行结果的出错提示 我试了下,是这么个情况:
outlook中发送新邮件,在你输入主题后,整个窗体的窗体名字会变成主题名,也就是说窗体对象是动态的,那么当你回放时,窗体名还是叫“新邮件”,自然就找不到这个对象了。。 要解决的话,可以尝试在对象库中修改窗体对象的名字,用正则表达式实现窗体名字参数化 那应该怎么解决这个问题?谢谢 太复杂了,谢谢你"美杜莎的瞳孔",正则表达式我都还不会用,但我知道应该怎么去解决这个问题了。 不客气哈,能解决就好 说说怎么解决吧。我也很想知道。 怎么没有了,我也很想知道了。::)
页:
[1]
2