如何:创建请求级插件

更新: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 测试

创建请求级插件

  1. 打开一个包含 Web 测试的测试项目。

    有关如何创建测试项目的更多信息,请参见如何:创建测试项目

  2. 在同一个解决方案中,创建一个在其中存储请求插件的类库项目。

  3. 选择该类库项目,然后右击“添加引用”。

  4. 在“.NET”选项卡上,选择“Microsoft.VisualStudio.QualityTools.WebTestFramework”。单击“确定”。

  5. 在您的测试项目中,右击并选择“添加引用”。

  6. 在“项目”选项卡上,选择新类库项目。单击“确定”。

  7. 编写插件的代码。首先,创建一个从 WebTestRequestPlugin 派生的新公共类。

  8. 实现 PreRequest 或/和 PostRequest 事件处理程序内的代码。

  9. 在编写完代码后,生成新项目。

  10. 打开要在其中添加请求插件的 Web 测试。

  11. 右击要在其中添加插件的请求,然后选择“添加请求插件”。

    随即显示“添加 Web 测试请求插件”对话框。

  12. 在“选择插件”下,选择新的插件,然后单击“确定”。

    将插件添加到“请求插件”文件夹中,该文件夹是 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);
        }
    }
}

请参见

任务

如何:创建自定义提取规则

如何:创建自定义验证规则

如何:创建负载测试插件

如何:创建编码的 Web 测试

如何:编辑现有的 Web 测试

参考

WebTestRequestPlugin