分类: Mysql/postgreSQL
2013-01-22 01:15:56
super smack支持测试数据的随机化,它是通过本地的文件中的数据记录来实现随机的。
super smack要做到支持复杂业务的数据库访问,那么数据库表的一些特性它就必须得支持。
super smack构建的测试数据是通过gen_data生成,导入至数据库的。
super smack如何构建带auto_increment的表的数据呢?
auto_increment属性的字段,一般都是作主键,该字段是数据库自动生成的。
这与super smack自动生成数据导入数据库有矛盾。
如果生成的数据记录中不包括auto_increment的字段也许可以使用mysqlimport导入。
经过测试,mysqlimport 可以通过指定导入数据库表的特定的列名来实现带auto_increment的表的数据构建。
具体是:mysql -L --columns=user_id,status,user_pw --fields-terminated-by=, -u root -p -h slave3 tigase tmp.dat
super smack如何实现带默认值表的数据记录导入?
通过将gen_data的参数用常量值替代%d,%n,%s就可生字段的固定值。
super smack如何构建含有经过数据库函数转换的字段的表的数据记录?
这个目前只能通过先写入数据库,然后将其导出,且导出的是纯数据,不是带sql的。
super smack要支持复杂业务的数据库访问,就必须支持复杂的查询语句,复杂的查询语句参数多,
查询的参数是测试用例来使用的,这些参数是通过数据库导出至文件。可能会要导出数据库中的大部分字段。
数据库该如何导出表中的纯数据?
可以用select user_id,status,user_pw from tmp into outfiile 'tmp.dat' fields terminated by ','
也可以用mysqldump -T