我有问题。我正在使用Visual Studio Web性能测试,我有一个csv文件,其中包含我需要在Web请求的字符串主体中发送的数据。问题是当Web测试从accountID检索数据时,它将数据作为int而不是字符串。因此,如果帐号为000005或000016,则测试将左侧的零忽略为5和15。这给我的网络服务错误。
有没有办法强制网络测试将所有数据视为字符串?谢谢
下面您可以看到csv文件的示例。数据不是很多,只有2列,所以我不想为那个
创建数据库AccountsNames, AccountID
Nombre1, 00001
Nombre3, 00002
Nombre4, 00003
Nombre5, 00004
Nombre6, 00005
Nombre7, 00006
Nombre8, 00007
答案 0 :(得分:0)
我最终要做的是创建一个Web请求插件,从webtest上下文获取数据源并编辑值。
这是一个代码示例:
namespace WebTestProjectToPlayArround
{
[DisplayName("Add Padding Zeroes")]
[Description("")]
public class EditContextParameter : WebTestRequestPlugin
{
[DisplayName("DataSourceContext")]
[Description("")]
public string DataSourceContextParam { set; get; }
[DisplayName("ContextParamToStoreValue")]
[Description("")]
public string ContextParam { set; get; }
public override void PreRequest(object sender, PreRequestEventArgs e)
{
base.PreRequest(sender, e);
var value = (string) e.WebTest.Context[DataSourceContextParam];
string newValue = "";
object contextParam;
string contextName = value.Replace("{","").Replace("}", "");
if (e.WebTest.Context.TryGetValue(contextName, out contextParam))
{
newValue = contextParam.ToString();
newValue = newValue.PadLeft(10, '0');
}
e.WebTest.Context[ContextParam] = newValue;
}
}
}