SQL存储过程测试(2)——使用BCP工具导入测试用例数据

发表于:2009-11-06 14:55

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:igoone    来源:51Testing软件测试博客

分享:

  注解

  使用BCP工具可以高效地以自动化的方式把测试用例数据从文本文件引入到SQL测试用例表中。特别注意,测试用例的数据文件在数据块的最后一行之后一定不能再有换行符。如果有换行符,就会被BCP解释成一个新的空行。而用于映射的格式文件在最后一行之后一定要有一个换行符。如果没有这个换行符,BCP就不会读入映射文件的最后一行。

  即使文本文件的数据格式与SQL表的结果不完全吻合,也可以通过BCP工具从文本文件导入数据。换句话说,即使文本文件的数据与相应的SQL列顺序不一致或者文本文件的数据有多作的字段,仍然可以使用BCP工具来导入数据,例如:

  0020,66,useless,e13

  0021,77,no-need,e14

  0022,88,go-away,e15

  0023,99,drop-it,e16

  这个文件有些额外的信息并不想将其导入,而且各个字段(caseID,expected value,unneeded data,input value)的顺序也和SQL列(caseID,input,expected)的顺序不一致。针对这个文本文件的BCP文件的格式如下:

  8.0

  4

  1      SQLCHAR       0      4      ","      1      caseID      SQL_Latin1_General_CP1_CI_AS

  2      SQLCHAR       0      2      ","      3      excepted      SQL_Latin1_General_CP1_CI_AS

  3      SQLCHAR       0      7      ","      0      junk      SQL_Latin1_General_CP1_CI_AS

  4      SQLCHAR       0      3      "\r\n"      2      input      SQL_Latin1_General_CP1_CI_AS

  映射文件的第6列通过设置该列的值来指定文本文件中相应数据的插入顺序,如果该列的值设为0,则在插入数据的时候忽略这个列。

  因为bcp.exe是一个命令行程序,所以可以手动运行它也可以把想要执行的命令放到一个简单的BAT文件,然后在自己的程序里调用这个BAT文件。如果想在SQL环境下使用BCP,可以通过 BULK INSERT 命令来完成。

  bulk insert dbTestCasesAndResults..tblTestCases

  from 'C:\somewhere\newData.dat'

  with (formatfile = 'C:\somewhere\newData.fmt')

相关阅读:

SQL存储过程测试(1)——创建测试用例以及测试结果存储

22/2<12
重磅发布,2022软件测试行业现状调查报告~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计

法律顾问:上海漕溪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2023
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号