??????????在某些系统的开发过程中,可能由于种种情况,没有测试数据,手工的填写测试数据又非常麻烦,所以写了个小工具,可以通过简单的配置生成测试数据,下面是截图:
??????????此处的图片显示不完整,可以先将该图片保存到本地之后再看。?? 
?
????????首先连接数据库,之后程序将自动列出当前连接下的所有的表,点击表之后,右面将列出改表下的所有的字段,设置字段值的生成方式,以及生成条数,程序将自动生成测试数据到数据库。
?
?????????Create: 当表不存在时是否创建该表
?????????Delete: 生成测试数据之前是否删除表中已经存在的数据
???????? Rows:? 生成数据的条数,默认是10条
?
????????目前支持的生成方式:
??????????????? Random(a,b)??????????????????????????????????????? 随机产生a 到 b之间的double类型的值
????????????????RandomValue([v1],[v2]...v[n])??????????? 随机产生列表中的值
????????????????Sequence(seed,step)??????????????????????????? 根据指定的种子值产生序列 ??????????????? GUID()???????????????????????????????????????????????? 产生GUID ??????????????? ForeignKey(TableName.FieldName)??? 使用其他表中的数据,引用指定的表的字段值 ??????????????? RandomString(1111_%d{yyyy_MM_dd_HH_mm_ss_SSS}_%r{32})
?????????????????????????????????????????????????????????????????????????????? 根据指定的格式产生字符串 ?????????????????????????????????????????????????????????????????????????????? %d{format}: DateTime{格式} ?????????????????????????????????????????????????????????????????????????????? ?%r{length}: 随机小写字符串{长度} ?????????????????????????????????????????????????????????????????????????????? ?%R{length}: 随机大写字符串{长度} ?????????????????????????????????????????????????????????????????????????????? %n{length}: 随机数字{长度} ????????????????RandomDate(2008-07-01 00:00:00,2008-07-31 23:59:59)??????????????????????? 随机生成指定时间端的Data ??????????????? RandomTiemstamp(2008-07-01 00:00:00,2008-07-31 23:59:59)???????????? 随机生成指定时间端的Data ??????????? ????BeanValue(ClassName,parameter)???????????????????????????????????????????????????????????? 使用指定的类生成
?
????????? 程序会根据指定的生成方式生成xml文件,然后根据该xml文件进行数据生成。如果已有的生成方式不能满足需求,可以手工实现生成方式;生成的xml格式如下所示,
????????? <TestData> ?????????????? <Table Name="CYK_TEST" Create="True" Delete="True" Rows="100"> ?????????????????????? <Field Name="EMPID" Type="long" PrimaryKey="True" Nullable="false" ????????????????????????????? Generator="Sequence(10000,1)"/> ???????????????????????? <Field Name="EMPSEX" Type="string" Nullable="true" ????????????????????????????? Generator="RandomValue(男,女)"/> ???????????????????????? <Field Name="EMPAGE" Type="int" Nullable="true" ????????????????????????????? Generator="Random(20,50)"/> ???????????????????????? <Field Name="EMPEDU" Type="string" Nullable="true" ????????????????????????????? Generator="RandomValue(1,2,3,4,5)"/> ???????????????????????? <Field Name="BIRTHDAY" Type="date" Nullable="true" ????????????????????????????? Generator="RandomDate(1980-01-01 00:00:00,1990-12-12 23:59:59)"/> ????????????????</Table> ???????? </TestData>
??????? 也可以将该文件保存,手工修改,然后再运行
??????? 支持指定数据源,根据指定的xml文件生成为其他数据库的表,例如Access,Excell等
?
??????? 不过目前的图形界面略显粗糙,仅支持SQLServer和Oracle,生成数据的程序则支持任意数据库。
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|