如何将 .cs 参数传递给 Visual Studio WebTest QueryStringParameter?

How to pass a .cs parameter to Visual Studio WebTest QueryStringParameter?

我在 visual studio 中创建了一个 webtest 以在 Rest 上执行测试 API.I 有一些代码可以生成一个随机序列号,我需要将其传递到我的 QueryString 参数中,无论如何做这个?我注意到我可以将 xml、csv 和数据库绑定到它以获得动态值。我是否必须将我的代码更改为 xml 文件,或者是否可以直接调用 .cs 文件中的方法? C# 语言。

我想在下面的方法中做类似的事情,但我希望 sessionToken.sessionToken() 成为从 .cs 文件调用的方法。

QueryString Parameters
     generatedToken=sessionToken.sessionToken()

Web Test Request pluginPreRequest 方法中编写您的代码,或从插件中调用您的方法。插件的最后语句之一应该将生成的值写入上下文参数,代码如下:

e.WebTest.Context["YourContextParameter"] = TheGeneratedValue.ToString();

查询字符串参数的值可以是这些样式之一

{{YourContextParameter}}

Some text{{YourContextParameter}}more text

稍加努力,您可以将上下文参数名称作为插件的参数传递。

将插件中的诊断添加到日志中会很有用;显示它已被调用并记录其输出。这可以通过以下形式的语句来完成:

e.WebTest.AddCommentToResult("Plugin result is " + TheGeneratedValue.ToString());

另一种方法是将整个网络测试转换为编码测试,方法是使用网络测试上方的命令图标之一。这会生成您可以根据需要进行编辑的 C#。但是,这种转换是一种单向过程。完成后您不能使用 webtest 编辑器进一步更改测试。因此我推荐插件路线。