四、编辑WebTest
8、创建WebTest请求插件
•请求是构成 Web 测试的声明性语句。请求插件为隔离 Web 测试中各个主请求外部的代码提供了一种手段。自定义的请求插件为您提供了一条调用代码的途径,因为每个请求都在一个 Web 测试中运行。通过从 WebTestRequestPlugin 基类派生您自己的类,可以创建自定义的请求插件。
7、MyWebRequestPlugin Demo下载
8、创建WebTest请求插件
•请求是构成 Web 测试的声明性语句。请求插件为隔离 Web 测试中各个主请求外部的代码提供了一种手段。自定义的请求插件为您提供了一条调用代码的途径,因为每个请求都在一个 Web 测试中运行。通过从 WebTestRequestPlugin 基类派生您自己的类,可以创建自定义的请求插件。
•自定义的请求插件可以用于已记录下的任何测试。
•还可以将自定义请求插件用于编码的 Web 测试。
默认情况下,在WebTest中没有提供任何的WebTest请求插件:
创建一个自定义的WebTest Request Plugin
1、新建的类库项目
2、然后右击并选择“添加引用”。
默认情况下,在WebTest中没有提供任何的WebTest请求插件:
创建一个自定义的WebTest Request Plugin
1、新建的类库项目
2、然后右击并选择“添加引用”。
在“.NET”选项卡上,选择“Microsoft.VisualStudio.TestTools.WebTesting”。单击“确定”。
3、编写一段获取代理机器名和请求的URL的代码,使用MSDN上提供的示例代码:
using System;
using System.Collections.Generic;
using System.Windows.Forms;
using Microsoft.VisualStudio.TestTools.WebTesting;
3、编写一段获取代理机器名和请求的URL的代码,使用MSDN上提供的示例代码:
using System;
using System.Collections.Generic;
using System.Windows.Forms;
using Microsoft.VisualStudio.TestTools.WebTesting;
namespace RequestPluginNamespace
{
public class MyWebRequestPlugin : WebTestRequestPlugin
{
public override void PostRequest(object sender, PostRequestEventArgs e)
{
MessageBox.Show(e.WebTest.Context.AgentName);
}
public override void PreRequest(object sender, PreRequestEventArgs e)
{
MessageBox.Show(e.Request.Url);
}
}
}
4、Build类库,将生成Dll添加引用到测试项目中
5、再次点击设置请求插件,可以看到MyWebRequestPlugin
点击确定后,可以在WebTest属性中看到请求插件中添加了MyWebRequestPlugin
6、添加此插件后,运行测试时,每次Web请求都会弹出一个代理名和Web请求URL的对话框。
{
public class MyWebRequestPlugin : WebTestRequestPlugin
{
public override void PostRequest(object sender, PostRequestEventArgs e)
{
MessageBox.Show(e.WebTest.Context.AgentName);
}
public override void PreRequest(object sender, PreRequestEventArgs e)
{
MessageBox.Show(e.Request.Url);
}
}
}
4、Build类库,将生成Dll添加引用到测试项目中
5、再次点击设置请求插件,可以看到MyWebRequestPlugin
点击确定后,可以在WebTest属性中看到请求插件中添加了MyWebRequestPlugin
6、添加此插件后,运行测试时,每次Web请求都会弹出一个代理名和Web请求URL的对话框。
7、MyWebRequestPlugin Demo下载