首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

动态测试数据让用例活起来-DBRider

之前介绍了在数据库测试时,可以通过@DateSet注解的方式将一些预定义的数据导入到目标数据库中,以实现对数据库上下文的控制。一般情况下,DBRider可以很好地完成这项工作。 而在某些测试场景中,则需要某些数据是需要动态生成的,例如ID、序列号、日期、时间等等。譬如在关于某个订单系统的测试时,系统只会处理当天的数据。而使用@ExportDataSet导出的数据,则会日期、时间等数据在导出后就不再变化了。这类数据如果是直接导入使用的话,可能会导致测试场景无法触发的问题。于是,一个很自然的需求就产生了 可否在导入数据时,能将日期字段的值替换为系统当前的日期?

01

python 使用pymssql 连接M

############################################################## # Copyright (C), 2009-2010, aliyun # FileName: dbunit.py # Author: elbert.chenh # Version: 0.1 # History: # <Author/Maintainer> <Date> <Modification> # elbert.chenh 10/07/11 Create this file ############################################################# import sys import ConfigParser import datetime,time import binascii import os import types import os import pdb import pymssql class DBUnit: def __init__(self,user=None,passwd=None,host=None,database=None): try: self.connection = pymssql.connect(host=host, user = user, password =passwd, database=database) self.cursor= self.connection.cursor() except: print "Could not connect to DB server." exit(0) def __del__(self): self.cursor.close() self.connection.close() def read(self,Sql,param=None): '''Exec select sql , return type is Tuple,use len fun return select row num use param like this: Sql=select * from table where param=%s and param1=%s param=(value1,valuei2) ''' try: cursor = self.connection.cursor() if param==None: cursor.execute(Sql) rs = cursor.fetchall() cursor.close() else: cursor.execute(Sql,param) rs = cursor.fetchall() cursor.close() except Exception,e: print e rs = () return rs def write(self,sql,param,iscommit=True): try: cursor = self.connection.cursor() print sql n = cursor.executemany(sql,param) if iscommit : self.connection.commit() return n except Exception,e: print e self.connection.rollback() return -1 def writeOneRecord(self,sql): try: cursor = self.connection.cursor() n = cursor.execute(sql) self.connection.commit() return int(cursor.lastrowid) except: self.connection.rollback() return -1 if __name__ == '__main__': a = time.time() db = DBUnit('accelbert08','a1234561','cacelbert01.mysql.alibabalabs.com:3306','elbert08') //不使用默认端口 rs = db.read("select count(*) from t_file") print rs #db.delete(dictinu)

01
领券