51Testing软件测试论坛

标题: QTP自带VB编的订票程序的测试问题?内详 [打印本页]

作者: gexiangping    时间: 2008-4-22 16:04
标题: QTP自带VB编的订票程序的测试问题?内详
如附件中的图,QTP自带的VB编写的订票程序(据说是用VB写的)
我录制的脚本如下:
Dialog("Login").WinEdit("Agent Name:").Set "JORDAN"
Dialog("Login").WinEdit("Agent Name:").Type  micTab
Dialog("Login").WinEdit("Password:").SetSecure "480d93e6050cfd150e81f75d2d958d3a9da386cd"
Dialog("Login").WinEdit("Password:").Type  micReturn
Window("Flight Reservation").WinObject("Date of Flight:").Type "042808"
Window("Flight Reservation").WinComboBox("Fly From:").Select "London"
Window("Flight Reservation").WinComboBox("Fly To:").Select "Paris"
Window("Flight Reservation").WinButton("FLIGHT").Click
Window("Flight Reservation").Dialog("Flights Table").WinList("From").Select "12582   LON   08:00 AM   PAR   10:00 AM   AF     $164.00"
Window("Flight Reservation").Dialog("Flights Table").WinList("From").Select "12315   LON   09:51 AM   PAR   11:31 AM   AF     $141.80"
Window("Flight Reservation").Dialog("Flights Table").WinButton("OK").Click
Window("Flight Reservation").WinEdit("Name:").Set "JORDAN"
Window("Flight Reservation").WinEdit("Tickets:").Set"2"
Window("Flight Reservation").WinButton("Insert Order").Click
Window("Flight Reservation").Close

问题是:
日期的格式怎么来测试 04/28/08
我设计的测试用例是:
输入预期输出实际输出
mmddyy无法输入
00/32/08输入错误,重新输入
13/28/08输入错误,重新输入
02/29/2007输入错误,重新输入
怎么通过QTP来测试 这个文本框是否是正确的日期输入框 ;
相同的还有:票数只能输入正数,且不能大于255,怎么用QTP来测试;
请大虾帮忙!跪谢!
作者: zgyfj008    时间: 2008-4-22 17:09
用正则试试
作者: gexiangping    时间: 2008-4-22 17:13
我觉得这个可能要自己定义一个日期输入的规则
作者: xiaonan    时间: 2008-4-22 17:47
这个怎么测试,我觉得完全是个用例设计的问题.根据需求,列出测试点,然后根据测试点,来设计用例,准备测试数据.QTP所要做的,就是设计好脚本,做好判断.当输入不同数据时,有效的无效的,系统是不是能做出不同的处理
作者: 雷声之前    时间: 2008-4-22 17:48
日期的格式为月日年,如果输入日期错误会有一个提示信息。如果要检查日期是否正确可以判断哪个提示信息的对话框是否存在,如果存在,日期输入错误

票数也可以用这个办法
作者: magic_zhu    时间: 2008-4-22 19:12
这个自带的软件有很大的缺陷 就是你输入的那个日期和地址还不一定就有飞机票 处理这样的情况方法就是 输入日期 和地点 飞机票就按默认的订 不然就会出错 测试日期的时候 必须在实际日期之后 不然也会出错 然后在脚本里参数化日期应该就没有什么问题了
作者: hsjzfling    时间: 2008-4-22 20:48
标题: 回复 1# 的帖子
LZ头像太PL了,口水一下先~~

方法其实不难,如果只是先针对日期来测试的话,可以先把日期参数化在了GlobalSheet的第一列,然后。。。继续看会头像先~~
作者: gexiangping    时间: 2008-4-23 01:05
感谢大家的回复,其实我的想法是,用例已经设计出来了,
假设输入一个无效的数据,那么飞机订票系统就会停下来,这样的话,回放就很麻烦,不知道有没有好的方法来解决这个问题
作者: hsjzfling    时间: 2008-4-23 09:43
标题: 回复 8# 的帖子
这就要看你的目的了,一般来说,一组输入数据对应一个测试用例,只要当其中某一数据不符合业务逻辑,那么该用例就应该是执行失败的。

看你的用例,你是要针对日期输入框单独进行测试。但看LZ说的想法,是打算当日期不对的时候,能继续测试其它的数据。。。那么这里又有两种情况了,继续测试其它数据前,日期是填你用例中的其它日期(如果按照一组数据为一个用例来看,那其实应该是其它用例中的数据了。。。);还是说指定一个固定的日期,只要当前填的日期不对,那就填指定的某一日期~

建议LZ重新设计下用例,一组输入做为一个用例,否则会有漏测的~
作者: scorix    时间: 2008-4-23 11:12
原来LS喜欢这种类型的
作者: huaxiaowu    时间: 2008-4-23 11:28
所填日期不对,系统会自动弹出一个对话框,判断那个对话框是否存在
存在则输出之前填入的日期,然后填下一个日期
否则直接填下一个日期

这样所有出错的日期会输出,就能测试哪些日期有问题了
我也是新手,不知道对不对……
作者: wq0909    时间: 2008-4-23 18:01
输入今天以及今天以前的日期  预期结果报err1
输入不合法日期 预期结果报err2

票数合法值好像是1~10
你就设置输入1:字符
        输入2:0
                输入3:1
                输入4:10
                输入5:11
作者: gexiangping    时间: 2008-4-24 00:09
感谢大家的回复
可是我的想法是,如果输入非合法的字符的话,系统就会弹出对话框或者无法输入,这个时候那么预先制定的脚本就会中断,能不能一次编出来,然后QTP自动记录失败的地方
在RESULT里面显显示就可以了  
大虾们能不能提供一个好的方法呀?
作者: huaxiaowu    时间: 2008-4-24 09:07
在可能出现中断的地方写个IF语句,正常则继续运行,中断则做中断处理并输出一个相应的报告
或者设置场景恢复,不过好象用户指南里说还是IF语句比较好
作者: gexiangping    时间: 2008-4-24 09:17
明白了,非常感谢呀




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