방법: 웹 성능 테스트 플러그 인 만들기
이 항목은 다음 버전에 적용됩니다.
Visual Studio Ultimate |
Visual Studio Premium |
Visual Studio Professional |
Visual Studio Express |
---|---|---|---|
웹 성능 테스트 플러그 인을 사용하면 웹 성능 테스트의 주 선언문 외부에서 코드를 분리하여 다시 사용할 수 있습니다. 사용자 지정 웹 성능 테스트 플러그 인을 사용하면 웹 성능 테스트를 실행하는 일부 코드를 호출할 수 있습니다. 웹 성능 테스트 플러그 인은 테스트가 반복될 때마다 한 번씩 실행됩니다. 또한 테스트 플러그 인에서 PreRequest 또는 PostRequest 메서드를 재정의하면 이러한 요청 플러그 인이 각 요청 전이나 후에 실행됩니다.
사용자 지정 웹 성능 테스트 플러그 인은 WebTestPlugin 기본 클래스에서 사용자 클래스를 파생시켜 만들 수 있습니다.
기록한 웹 성능 테스트와 함께 사용자 지정 웹 성능 테스트 플러그 인을 사용하면 최소한의 코드만 작성해도 되므로 웹 성능 테스트를 훨씬 효과적으로 제어할 수 있습니다. 코딩된 웹 성능 테스트와 함께 사용할 수도 있습니다. 자세한 내용은 방법: 코딩된 웹 성능 테스트 만들기를 참조하십시오.
참고
부하 테스트 플러그 인도 만들 수 있습니다. 자세한 내용은 방법: 부하 테스트 플러그 인 만들기를 참조하십시오.
사용자 지정 웹 성능 테스트 플러그 인을 만들려면
웹 성능 테스트를 포함하는 테스트 프로젝트를 엽니다.
테스트 프로젝트를 만드는 방법에 대한 자세한 내용은 방법: 자동화된 테스트용 테스트 프로젝트 만들기 및 구성을 참조하십시오.
솔루션 탐색기에서 솔루션을 마우스 오른쪽 단추로 클릭하고 추가를 선택한 다음 새 프로젝트를 클릭합니다.
새 프로젝트 추가 대화 상자가 표시됩니다.
설치된 템플릿에서 **Visual C#**을 선택합니다.
템플릿 목록에서 클래스 라이브러리를 선택합니다.
이름 텍스트 상자에 클래스의 이름을 입력합니다.
확인을 클릭합니다.
새 클래스 라이브러리 프로젝트가 솔루션 탐색기에 추가되고 새 클래스가 코드 편집기에 나타납니다.
솔루션 탐색기의 새 클래스 라이브러리에서 참조 폴더를 마우스 오른쪽 단추로 클릭하고 참조 추가를 선택합니다.
참조 추가 대화 상자가 표시됩니다.
.NET 탭을 클릭하고 아래로 스크롤하여 Microsoft.VisualStudio.QualityTools.WebTestFramework를 선택합니다.
확인을 클릭합니다.
Microsoft.VisualStudio.QualityTools.WebTestFramework에 대한 참조가 솔루션 탐색기의 참조 폴더에 추가됩니다.
솔루션 탐색기에서 웹 성능 테스트 플러그 인을 추가할 부하 테스트를 포함하는 테스트 프로젝트의 최상위 노드를 마우스 오른쪽 단추로 클릭하고 참조 추가를 선택합니다.
참조 추가 대화 상자가 표시됩니다.
속성 탭을 클릭하고 클래스 라이브러리 프로젝트를 선택합니다.
확인을 클릭합니다.
코드 편집기에서 플러그 인의 코드를 작성합니다. 먼저 WebTestPlugin에서 파생되는 새 공용 클래스를 만듭니다.
PreWebTest 및 PostWebTest 이벤트 처리기 중 하나 또는 둘 모두에서 코드를 구현합니다. 샘플 구현을 보려면 다음 예제 단원을 참조하십시오.
코드를 작성한 후 새 프로젝트를 빌드합니다.
웹 성능 테스트를 엽니다.
웹 성능 테스트 플러그 인을 추가하려면 도구 모음에서 웹 테스트 플러그 인 추가를 클릭합니다.
웹 테스트 플러그 인 추가 대화 상자가 표시됩니다.
플러그 인 선택에서 웹 성능 테스트 플러그 인 클래스를 선택합니다.
선택한 플러그 인에 대한 속성 창에서 런타임에 사용할 플러그 인의 초기 값을 설정합니다.
참고
플러그 인에서 속성을 원하는 만큼 노출할 수 있습니다. 속성을 공용이고 설정 가능한 기본 형식(정수, 부울 또는 문자열 등)으로 지정하기만 하면 됩니다. 나중에 속성 창을 사용하여 웹 성능 테스트 플러그 인 속성을 변경할 수도 있습니다.
확인을 클릭합니다.
플러그 인이 웹 테스트 플러그 인 폴더에 추가됩니다.
경고
이 플러그 인을 사용하는 부하 테스트 또는 웹 성능 테스트를 실행할 때 다음과 유사한 오류가 발생할 수 있습니다.
Request failed: Exception in <plug-in> event: Could not load file or assembly '<"Plug-in name".dll file>, Version=<n. n. n. n>, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.
이 오류는 플러그 인의 코드를 변경한 후 새 DLL 버전 (Version=0.0.0.0)을 만들었지만 해당 플러그 인이 계속해서 원래 플러그 인 버전을 참조하는 경우에 발생합니다. 이 문제를 해결하려면 다음 단계를 수행합니다.
-
테스트 프로젝트에서 참조에 경고가 표시되는 것을 확인할 수 있습니다. 참조를 제거했다가 플러그 인 dll에 다시 추가합니다.
-
테스트 또는 적절한 위치에서 플러그 인을 제거했다가 다시 추가합니다.
-
예제
다음 코드에서는 테스트 반복을 나타내는 WebTestContext에 항목을 추가하는 사용자 지정 웹 성능 테스트 플러그 인이 만들어집니다.
웹 성능 테스트를 실행한 후 이 플러그 인을 사용하여 웹 성능 테스트 결과 뷰어의 컨텍스트 탭에서 TestIteratnionNumer라는 추가한 항목을 볼 수 있습니다.
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.VisualStudio.TestTools.WebTesting;
namespace SampleRules
{
public class SampleWebTestPlugin : WebTestPlugin
{
// start counting iterations at 1 not 0
// so that the iteration number we give matches the run number
static int testIterationNumber = 1;
public override void PostWebTest(object sender, PostWebTestEventArgs e)
{
}
public override void PreWebTest(object sender, PreWebTestEventArgs e)
{
e.WebTest.Context["TestIterationNumber"] = testIterationNumber;
testIterationNumber++;
}
}
}
참고 항목
작업
방법: 웹 성능 테스트에 대한 사용자 지정 추출 규칙 만들기
방법: 웹 성능 테스트에 대한 사용자 지정 유효성 검사 규칙 만들기
방법: 웹 성능 테스트 편집기를 사용하여 기존 웹 성능 테스트 편집