post測(cè)試生成插件是一款專門(mén)用于有時(shí)測(cè)試接口時(shí)接口服務(wù)端不支持get提交方式時(shí)用到的POST字段內(nèi)容模擬提交方式,許多時(shí)候我們?cè)跍y(cè)試接口服務(wù)端,程序不支持POST、GET提交方式,我們就無(wú)法通過(guò)瀏覽器窗口來(lái)執(zhí)行提交,post測(cè)試生成插件就是專門(mén)用于測(cè)試POST和GET窗口提交的工具,有需要的朋友不妨嘗試下。
使用說(shuō)明
請(qǐng)求是構(gòu)成 Web 測(cè)試的聲明性語(yǔ)句。請(qǐng)求插件為隔離 Web 測(cè)試中各個(gè)主請(qǐng)求外部的代碼提供了一種手段。自定義的請(qǐng)求插件為您提供了一條調(diào)用代碼的途徑,因?yàn)槊總(gè)請(qǐng)求都在一個(gè) Web 測(cè)試中運(yùn)行。通過(guò)從 WebTestRequestPlugin 基類派生您自己的類,可以創(chuàng)建自定義的請(qǐng)求插件。
自定義的請(qǐng)求插件可以用于已記錄下的任何測(cè)試。在記錄了一個(gè) Web 測(cè)試后,可以在“Web 測(cè)試編輯器”中檢查并編輯請(qǐng)求。有關(guān)更多信息,請(qǐng)參見(jiàn)如何:編輯現(xiàn)有的 Web 測(cè)試。
此外,還可以將自定義請(qǐng)求插件用于編碼的 Web 測(cè)試。有關(guān)更多信息,請(qǐng)參見(jiàn)如何:創(chuàng)建編碼的 Web 測(cè)試。
創(chuàng)建自定義請(qǐng)求插件
打開(kāi)一個(gè)包含 Web 測(cè)試的測(cè)試項(xiàng)目。
有關(guān)如何創(chuàng)建測(cè)試項(xiàng)目的更多信息,請(qǐng)參見(jiàn) 如何:創(chuàng)建測(cè)試項(xiàng)目。
在同一個(gè)解決方案中,創(chuàng)建一個(gè)在其中存儲(chǔ)請(qǐng)求插件的單獨(dú)的類庫(kù)項(xiàng)目。
選擇新建的類庫(kù)項(xiàng)目,然后右擊并選擇“添加引用”。
在“。NET”選項(xiàng)卡上,選擇“Microsoft.VisualStudio.QualityTools.WebTestFramework”。單擊“確定”。
在您的測(cè)試項(xiàng)目中,右擊并選擇“添加引用”。在“項(xiàng)目”選項(xiàng)卡上,選擇新的類庫(kù)。單擊“確定”。
在從 WebTestRequestPlugin 派生的新類中編寫(xiě)代碼。必須在 PreRequest 或 PostRequest 事件處理程序的內(nèi)部編寫(xiě)附加代碼。
在編寫(xiě)完代碼后,生成新項(xiàng)目。
打開(kāi)要在其中添加請(qǐng)求插件的 Web 測(cè)試。
若要添加自定義請(qǐng)求,請(qǐng)單擊工具欄上的“設(shè)置請(qǐng)求插件”。這會(huì)在“設(shè)置請(qǐng)求插件”對(duì)話框中顯示您的請(qǐng)求插件。選擇相應(yīng)的類,然后單擊“確定”。
注意 還可以在“屬性”窗口中更改請(qǐng)求插件。選擇相應(yīng)的 Web 測(cè)試節(jié)點(diǎn)并按 F4。在“屬性”窗口中,可看到“插件”類別以及已經(jīng)添加到 Web 測(cè)試中的插件。
示例
以下代碼創(chuàng)建一個(gè)自定義請(qǐng)求插件,該插件訪問(wèn)在 WebTestContext 和 WebTestResponse 中找到的信息。
復(fù)制
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);
}
}
}