mmsw450 发表于 2013-1-21 21:39:52

QTP版"12306订票助手"--支持刷票及自动预定

本帖最后由 mmsw450 于 2013-1-23 23:13 编辑

12306把订票助手封杀了,闲来无事用QTP写了个简单的刷票脚本。   

登录以及设置始发、终点 、日期部分未做;一是简单,二是没有做的必要!(因为订票时,可能随时修改始、终站及购票日期,由QTP来控制不合理)

目前已实现的功能:
0、至少5秒自动查询一次(可设定查询间隔)
1、支持车次白名单,
2、支持席位选择,目前支持“仅卧铺”或“仅座票”或“全部”,一旦设定席位有票根据白名单自动预定车次
3、支持自动选择订票人员(暂未做验证码识别,不能自动提交订单)

使用方法:
1、先打开QTP,后打开IE
2、登录帐号,设置好始发及终点站;出行日期。
3、修改NameList;WhiteList;FirstSelect三个变量

4、运行脚本即可


脚本下载地址:
   

同几个朋友交流后,把登录部分也发布出来:
1、 登录部分需要手动输入验证码;脚本自动检测,如果验证码长度=4位时,自动点击登录;
2、如果验证码错误,则自动输入密码,重复步骤1





PS:0完全描述性编程,代码粘贴到QTP中即可使用。
   1仅个人娱乐之作,勿喷;欢迎指点。测试交流群:288793120
   2在IE7 IE9 下测试通过
   3计划用JAVA+WebDriver重写
   4因为51论坛代码排版有点难看;删除代码部分。请下载后查看。

mmsw450 发表于 2013-1-22 09:31:43

51这排版好淡疼啊

cnblogs地址
http://www.cnblogs.com/zhm450/archive/2013/01/21/2870423.html

赵佳乐SMILE 发表于 2013-1-22 09:35:15

厉害啊

黑羽祭 发表于 2013-1-22 09:39:39

支持一下~

测试ing2012 发表于 2013-1-22 11:36:41

:victory:

jhbaiyang 发表于 2013-1-22 14:12:12

听不错的,,用来学习qtp如何实现一个具体功能的很好的例子,
里面包含了数组的使用,引用function还有描述性编程,感谢楼主!!!
楼主用的uft11.5还是qtp11写的?

mmsw450 发表于 2013-1-22 14:41:43

回复 6# jhbaiyang


    在QTP 9.2 下写的;在11下测试通过。

本来登录以及选择始发、终点、日期等也作了自动化。但考虑到这几个值可能会不断变化,就把这些功能屏蔽掉了。
登录功能之所以屏蔽掉,是因为如登录都不成功,也没有接下来的刷票过程了。

之所以用描述性编程来写,想直接把代码粘上就能用,脱离对象库。

wjtest 发表于 2013-1-22 16:22:51

:victory: 没用过QTP,支持下

fengshijie 发表于 2013-1-23 09:15:31

貌似很强啊,充分的学以致用了,支持

t_user 发表于 2013-1-23 09:18:37

呵呵 闲来没事居然就可以写个脚本耍,学习了

Nexi 发表于 2013-1-23 09:47:21

楼主,我想请教你个问题,你那个登录时的验证码怎么处理的呢

mmsw450 发表于 2013-1-23 10:08:03

回复 11# Nexi


    回复楼上:
登录部分我删除掉,没有上传。
验证码部分不好做,有人说用OCR,但OCR的识别率不敢恭维。

我的处理方式是,自动输入用户名及密码,然后循环检查验证码输入框,如果字符串长度=4时,则登录,登录成功后点击车票预定,然后自动输入始发及终点、日期等

后来考虑到某些因素,把这个给删除掉,没有上传。如果有需要的话,可以追加上去。

louqqson008 发表于 2013-1-23 11:18:17

本帖最后由 louqqson008 于 2013-1-23 11:19 编辑

非常厉害。至于验证码,可以先登录了,再执行这段QTP。不知道这样行不行

zb460989093 发表于 2013-1-23 11:47:38

膜拜

mmsw450 发表于 2013-1-23 12:04:53

回复 13# louqqson008


    就是先登录,再执行这段,在运行设置里, 设置为“Record and run test on any open browser”就可以了

junyjiang 发表于 2013-1-23 16:23:17

ocr识别的时候输入框=4时也不能确定他就是正确的验证码 啊?

mmsw450 发表于 2013-1-23 18:53:41

本帖最后由 mmsw450 于 2013-1-26 14:16 编辑

回复 16# junyjiang

    我并没有用OCR,如果OCR识别率不高反而不如不用!
阁下可看一下登录部分的代码 ;我写了很多注释,很容易理解。

PS:51 的代码排版太乱,无奈下重新整理了一遍登录的代码。也可从一楼下载。

zjuan2002 发表于 2013-1-26 14:48:47

顶一个

icu200934 发表于 2013-1-27 15:58:18

嗯,,好厉害,,支持

四季草堂 发表于 2013-1-28 11:40:44

楼主用的什么编程工具
页: [1] 2 3
查看完整版本: QTP版"12306订票助手"--支持刷票及自动预定