如何:创建请求级插件
更新:2007 年 11 月
请求是构成 Web 测试的声明性语句。 使用 Web 测试插件,可以隔离代码并在 Web 测试中的主要声明性语句外部重用代码。可以创建插件并将其添加到单个请求以及包含它的 Web 测试中。自定义的请求插件为您提供了一种调用代码的方式(作为特定的请求在 Web 测试中运行)。
![]() |
---|
在 Visual Studio 2005 Team Edition for Testers 中,可以在测试级别创建一个对测试中的每个请求都运行的请求插件。在 Team System 2008 Test Edition 中,测试级插件支持请求插件接口并将适用于测试中的每个请求。当 Team System 2008 Test Edition 遇到在 Visual Studio 2005 中创建的请求插件时,它会将该插件转换为等效的测试级插件。 |
每个 Web 测试请求插件都具有 PreRequest 方法和 PostRequest 方法。将请求插件附加到某个特定的 http 请求之后,在发出请求之前将会激发 PreRequest 事件,并在收到请求之后激发 PostRequest 事件。
通过从 WebTestRequestPlugin 基类派生您自己的类,可以创建自定义的 Web 测试请求插件。
可以将自定义的 Web 测试请求插件用于已记录的 Web 测试。自定义的 Web 测试请求插件允许您只需编写最少量的代码即可获得对 Web 测试的更大控制级别。此外,还可以将它们用于编码的 Web 测试。有关更多信息,请参见如何:创建编码的 Web 测试。
创建请求级插件
打开一个包含 Web 测试的测试项目。
有关如何创建测试项目的更多信息,请参见如何:创建测试项目。
在同一个解决方案中,创建一个在其中存储请求插件的类库项目。
选择该类库项目,然后右击“添加引用”。
在“.NET”选项卡上,选择“Microsoft.VisualStudio.QualityTools.WebTestFramework”。单击“确定”。
在您的测试项目中,右击并选择“添加引用”。
在“项目”选项卡上,选择新类库项目。单击“确定”。
编写插件的代码。首先,创建一个从 WebTestRequestPlugin 派生的新公共类。
实现 PreRequest 或/和 PostRequest 事件处理程序内的代码。
在编写完代码后,生成新项目。
打开要在其中添加请求插件的 Web 测试。
右击要在其中添加插件的请求,然后选择“添加请求插件”。
随即显示“添加 Web 测试请求插件”对话框。
在“选择插件”下,选择新的插件,然后单击“确定”。
将插件添加到“请求插件”文件夹中,该文件夹是 http 请求的子文件夹。
示例
可以使用下列代码来创建自定义的 Web 测试插件。
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);
}
}
}