自动化创建测试数据基本上都是用自动化程序来实现的,下面以Python来说明下常见的几种情况:
1) Web页面创建测试数据:如果我们需要手动在web页面上点击一系列操作,才能完成下单的操作,我们可以考虑用Python加selenium的脚本是实现,当需要下单的时候,只需要运行一下脚本即可;实例代码如下:
from selenium import webdriver
import time
driver = webdriver.Firefox()
##下面定义一些操作和处理方法,举例:
driver.find_element_by_id("kw").send_keys("money is coming")
time.sleep(2)
driver.find_element_by_id("su").submit()
time.sleep(3)
driver.quit()
2) 数据中包含数字(要求不重复)参数的处理方法:当我们创建的测试数据中,需要不重复的数字作为参数的时候,我们可以考虑用Python自带的random函数,举例如下:
import random
#用for循环指定数据的多少
for i in xrange(1,5):
#生成随机数的大小可以由上下限指定,
num = random.randint(1,20000)
#也可以直接是 data=num,看你的数据模板是什么
data = “abc d%def” %num
print data
3) 数据中字符串(要求不重复)的处理方法:当我们创建的测试数据中,需要不重复的字符串作为参数的时候,我们可以考虑用Python自带的uuid函数,举例如下,
import uuid
#用for循环指定数据的多少
for i in xrange(1,5):
str = uuid.uuid1()
#也可以直接是 data=str,看你的数据模板是什么
data ="abc s% def" % str
print data
4) 数据库中批量数据的修改方法:也可以通过Python脚本加SQL语句来完成,举例如下:
import pyodbc
conn=pyodbc.connect('DRIVER={SQLServer};SERVER=192.168.1.1;DATABASE=TEST;UID=XXXXX;PWD=XXXX)
sql = "update tablename set productID =xxxx,quantity=xxxxx where orderID in( X1,X2,...Xn)"
cursor = conn.cursor()
cursor.execute(sql)
resultRows = cursor.fetchall()
nums=len(resultRows)
print nums