首页 > 数据库技术 > 详细

自动化测试——从MySQL数据库中读取短信验证码

时间:2016-01-30 22:46:42      阅读:396      评论:0      收藏:0      [点我收藏+]

背景:前一段时间,为公司某系统进行自动化测试。系统的注册页面需要输入手机号,并点击获取验证码验证手机号。

技术分享

当然,测试时的手机号是假的,而且验证码也可以随便填写,供测试所用的系统也没有对验证码的正确性进行校验。但是,最近提测的系统不知被调皮的程序员们做了什么手脚,居然不再允许随便填写验证码,而是需要在点击获取验证码后到数据库中查看生成的验证码是什么,再在注册页面填写该验证码。这对自动化测试实在不便(以前我都是让程序直接在验证码输入框中输入1的……),怎么办呢,总不能点击获取验证码后让程序sleep30秒,期间测试人员以迅雷不及掩耳盗铃之势到数据库中查看验证码,再手动填写吧,这样也太不符合自动化的意义了。于是,摸索了一下Python使用MySQL数据库,代码如下:

import MySQLdb

conn = MySQLdb.connect(host=‘172.16.20.217‘,port=3306,user=‘root‘,passwd=‘password‘,db=‘krd20150821‘)
cur = conn.cursor()
# 查询表中最后一条数据的验证码字段
cur.execute(‘SELECT MESSAGE_NOTE FROM SYS_TEL_MESSAGE ORDER BY ID DESC LIMIT 1‘)
message = str(cur.fetchone())
yzm = filter(lambda x:x.isdigit(), message)

得到的message是一个元组,将其转换为字符串,再过滤掉数字之外的字符后,就是最终所需要的验证码。
虽然,代码还有缺陷,如果有多人同时在测试,则得到的验证码便有可能是别人手机号的验证码。不过还好,只有我用它测试,够用就好。

自动化测试——从MySQL数据库中读取短信验证码

原文:http://www.cnblogs.com/desperado0807/p/5172076.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!