2016-02-05 161 views
0

根据我的要求,我需要上传一个.csv文件到应用程序中。我试图用loadrunner来模拟这个。我encoutering的问题是,我的csv文件是在下面的格式用逗号上传csv文件

头 - AA,BB,CC

数据-XYZ, “YYX,ZZY”,XXZ

在使用下面的语句上传文件,我得到一个错误“” 2号线包含4列,而不是3"

web_submit_data("upload", 
"Action=xxx/upload", 
"Method=POST", 
"EncType=multipart/form-data", 
"RecContentType=text/html", 
"Referer=xxx", 
"Snapshot=t86.inf", 
"Mode=HTML", 
ITEMDATA, 
"Name=utf8", "Value=✓", ENDITEM, 
"Name=token", "Value={token_1}", ENDITEM, 
"Name=upload_file", "Value={NewParam_5}", "File=yes", "ContentType=text/csv", ENDITEM, 
"Name=Button1", "Value=Upload", ENDITEM, 
LAST); 

按在How to deal with a string with comma in it from a csv, when we have to read the data by using loadrunner?提供的信息, 我试图更新.prm文件到一个新的分隔符管道|但我仍然得到错误。

[parameter:NewParam_5] 
Delimiter="|" 
ParamName="NewParam_5" 
TableLocation="C:\temp" 
ColumnName="Col 1" 

我也注意到,即使我设定的分隔符来管,如果我右击在web_submit_data()并转到参数属性,我看到了一个列分隔符选项有作为,并没有将其设置到管并设置为逗号,表示该设置对.prm文件中的设置具有更高的优先级。

有人可以请指导我正确的方式来设置一个新的分隔符,以便vugen识别和解析csv文件,因为我希望它。

我正在使用loadrunner 12.5

感谢您的帮助。

回答

1

你需要上传一个文件或一行逗号分隔变量吗?现在,您似乎正在读取一行CSV变量,而不是文件,因为参数文件将包含虚拟用户目录内的文件名列表或单个文件引用(使用时传输的额外文件)或由虚拟用户,然后上传。

+0

感谢您回复James ..我需要上传一个csv文件..最初记录的事件有一个文件名Value =“{C:\\ test \\ sample.csv}”,但右键单击内容并选择“显示参数”,参数属性显示在当前没有使用的.dat文件中。我用它来确保我遵循我们通常遵循的参数化过程,它改变了事件中的值(如原始帖子中所示),但即使这样做我也没有发现运气。我的意图是上传文件。 – user1528884

+0

通过提供文件内容而不是文件名本身,看起来像是在错误的路径上。取一个有代表性的文件,放在虚拟用户目录中。请务必将其作为一个额外文件与虚拟用户分发。然后将文件名改为该文件名。您可以稍后决定是否要将文件从不同的公共位置上载到Load Generator虚拟用户,或者您是否将动态构建文件。但就目前而言,您在语义上与文件 –

+0

的内容在错误的路径上。感谢您的指示。 web_submit_data( “上载”, \t \t “动作= www.sample.com /上传”, \t \t “方法= POST”, \t \t “ENCTYPE =多部分/格式数据”, \t \t“的Referer = WWW .sample.com/login“, \t \t”Snapshot = t101。INF “ \t \t ”模式= HTML“, \t \t的ItemData, \t \t ”名称= UTF8“,” 值= AOE“ “ENDITEM, \t \t ”名称=记号“,” 值= {令牌} ” ENDITEM, \t \t “名称= upload_file”, “值= sample.csv”, “文件= YES”,ENDITEM, \t \t LAST); – user1528884