다음을 통해 공유


방법: 요청 수준 플러그 인 만들기

업데이트: 2007년 11월

요청은 웹 테스트를 구성하는 선언문입니다. 웹 테스트 플러그 인을 사용하면 웹 테스트의 주 선언문 외부에서 코드를 분리하여 다시 사용할 수 있습니다. 플러그 인을 만들어 개별 요청과 요청을 포함하는 웹 테스트에 추가할 수 있습니다. 사용자 지정 요청 플러그 인을 사용하면 웹 테스트에서 특정 요청을 실행하는 코드를 호출할 수 있습니다.

참고:

Visual Studio 2005 Team Edition for Testers에서는 테스트의 모든 요청에 대해 실행되는 테스트 수준의 요청 플러그 인을 만들 수 있었습니다. Team System 2008 Test Edition에서 테스트 수준 플러그 인은 요청 플러그 인 인터페이스를 지원하며 테스트의 모든 요청에 적용됩니다. Team System 2008 Test Edition에서는 Visual Studio 2005에서 만든 요청 플러그 인이 발견되면 이 플러그 인을 해당되는 테스트 수준 플러그 인으로 변환합니다.

모든 웹 테스트 요청 플러그 인에는 PreRequest 메서드와 PostRequest 메서드가 있습니다. 특정 HTTP 요청에 요청 플러그 인을 연결하고 나면 요청을 실행하기 전에는 PreRequest 이벤트가 발생하고 응답을 받은 후에는 PostRequest가 발생합니다.

사용자 지정 웹 테스트 요청 플러그 인은 WebTestRequestPlugin 기본 클래스에서 사용자 클래스를 파생시켜 만들 수 있습니다.

기록한 웹 테스트와 함께 사용자 지정 웹 테스트 요청 플러그 인을 사용할 수 있습니다. 사용자 지정 웹 테스트 요청 플러그 인을 사용하면 최소한의 코드만 작성해도 되므로 웹 테스트를 훨씬 효과적으로 제어할 수 있습니다. 코딩된 웹 테스트와 함께 사용할 수도 있습니다. 자세한 내용은 방법: 코딩된 웹 테스트 만들기를 참조하십시오.

요청 수준 플러그 인을 만들려면

  1. 웹 테스트를 포함하는 테스트 프로젝트를 엽니다.

    테스트 프로젝트를 만드는 방법에 대한 자세한 내용은 방법: 테스트 프로젝트 만들기를 참조하십시오.

  2. 같은 솔루션에서 요청 플러그 인을 저장할 클래스 라이브러리 프로젝트를 만듭니다.

  3. 클래스 라이브러리 프로젝트를 선택한 다음 참조 추가를 마우스 오른쪽 단추로 클릭합니다.

  4. .NET 탭에서 Microsoft.VisualStudio.QualityTools.WebTestFramework를 선택하고 확인을 클릭합니다.

  5. 테스트 프로젝트에서 마우스 오른쪽 단추를 클릭하고 참조 추가를 선택합니다.

  6. 프로젝트 탭에서 새 클래스 라이브러리 프로젝트를 선택합니다. 확인을 클릭합니다.

  7. 플러그 인 코드를 작성합니다. 먼저 WebTestRequestPlugin에서 파생되는 새 공용 클래스를 만듭니다.

  8. PreRequestPostRequest 이벤트 처리기 중 하나 또는 둘 모두에서 코드를 구현합니다.

  9. 코드를 작성한 후 새 프로젝트를 빌드합니다.

  10. 요청 플러그 인을 추가할 웹 테스트를 엽니다.

  11. 플러그 인을 추가할 요청을 마우스 오른쪽 단추로 클릭한 다음 요청 플러그 인 추가를 선택합니다.

    웹 테스트 요청 플러그 인 추가 대화 상자가 표시됩니다.

  12. 플러그 인 선택에서 새 플러그 인을 선택하고 확인을 클릭합니다.

    해당 플러그 인이 HTTP 요청의 자식 폴더인 요청 플러그 인 폴더에 추가됩니다.

예제

다음 코드를 사용하여 사용자 지정 웹 테스트 플러그인을 만들 수 있습니다.

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);
        }
    }
}

참고 항목

작업

방법: 사용자 지정 추출 규칙 만들기

방법: 사용자 지정 유효성 검사 규칙 만들기

방법: 부하 테스트 플러그 인 만들기

방법: 코딩된 웹 테스트 만들기

방법: 기존 웹 테스트 편집

참조

WebTestRequestPlugin