6. 데이터베이스 테스트 계획 수립 ¶
이 섹션에서는 데이터베이스 서버를 테스트하기 위한 기본 테스트 계획 을 만드는 방법을 배웁니다 . 데이터베이스 서버에 2개의 SQL 요청을 보내는 50명의 사용자를 생성합니다. 또한 사용자에게 테스트를 100번 실행하도록 지시합니다. 따라서 총 요청 수는 (50명의 사용자) x (2개의 요청) x (100번 반복) = 10,000 JDBC 요청입니다. 테스트 계획을 구성하려면 스레드 그룹 , JDBC 요청 , 요약 보고서 요소를 사용합니다 .
6.1 사용자 추가 ¶
모든 JMeter 테스트 계획에서 수행하려는 첫 번째 단계는 스레드 그룹 요소를 추가하는 것입니다. 스레드 그룹은 시뮬레이션하려는 사용자 수, 사용자가 요청을 보내야 하는 빈도 및 보내야 하는 요청 수를 JMeter에 알려줍니다.
먼저 테스트 계획을 선택하여 ThreadGroup 요소를 추가하고 마우스 오른쪽 버튼을 클릭하여 추가 메뉴를 가져온 다음 을 선택 합니다.
이제 테스트 계획 아래에 스레드 그룹 요소가 표시되어야 합니다. 요소가 표시되지 않으면 테스트 계획 요소를 클릭하여 테스트 계획 트리 를 확장 합니다.
다음으로 기본 속성을 수정해야 합니다. 아직 선택하지 않은 경우 트리에서 스레드 그룹 요소를 선택합니다. 이제 JMeter 창의 오른쪽 섹션에 스레드 그룹 제어판이 표시되어야 합니다(아래 그림 6.1 참조).
스레드 그룹에 대해 보다 설명적인 이름을 제공하여 시작합니다. 이름 필드에 JDBC 사용자 를 입력하십시오 .
다음으로 사용자 수를 50명 으로 늘 립니다.
다음 필드인 램프업 기간에서 값을 10 초로 둡니다. 이 속성은 JMeter에 각 사용자 시작 사이의 지연 시간을 알려줍니다. 예를 들어, 램프업 기간을 10초로 입력하면 JMeter는 10초가 끝날 때까지 모든 사용자의 시작을 완료합니다. 따라서 50명의 사용자와 10초의 램프업 기간이 있는 경우 시작 사용자 간의 지연은 200밀리초(10초/50명의 사용자 = 사용자당 0.2초)가 됩니다. 값을 0으로 설정하면 JMeter는 즉시 모든 사용자를 시작합니다.
마지막으로 루프 수 필드에 값 100 을 입력합니다. 이 속성은 JMeter에 테스트를 반복할 횟수를 알려줍니다. JMeter가 테스트 계획을 반복적으로 실행하도록 하려면 Forever 확인란을 선택합니다.
완성된 JDBC 사용자 스레드 그룹은 그림 6.2를 참조하십시오.
6.2 JDBC 요청 추가 ¶
이제 사용자를 정의했으므로 사용자가 수행할 작업을 정의할 차례입니다. 이 섹션에서는 수행할 JDBC 요청을 지정합니다.
JDBC 사용자 요소 를 선택하여 시작하십시오 . 마우스 오른쪽 버튼을 클릭하여 추가 메뉴 가 나타나면 을 선택 합니다. 그런 다음 이 새 요소를 선택하여 해당 제어판을 봅니다(그림 6.3 참조).
다음 필드를 설정합니다(여기서는 ' cloud '라는 MySQL 데이터베이스를 사용한다고 가정).
- 풀에 바인딩된 변수 이름(여기서는 myDatabase )입니다. 구성을 고유하게 식별해야 합니다. JDBC 샘플러에서 사용할 구성을 식별하는 데 사용됩니다.
- 데이터베이스 URL: jdbc:mysql://ipOfTheServer:3306/cloud
- JDBC 드라이버 클래스: com.mysql.jdbc.Driver
- 사용자 이름: 데이터베이스의 사용자 이름
- 비밀번호: 사용자 이름의 비밀번호
화면의 다른 필드는 기본값으로 둘 수 있습니다.
JMeter는 제어판에 지정된 구성 설정으로 데이터베이스 연결 풀을 생성합니다. 풀은 ' 변수 이름 ' 필드의 JDBC 요청에서 참조됩니다. 여러 다른 JDBC 구성 요소를 사용할 수 있지만 고유한 이름을 가져야 합니다. 모든 JDBC 요청은 JDBC 구성 풀을 참조해야 합니다. 둘 이상의 JDBC 요청이 동일한 풀을 참조할 수 있습니다.
JDBC 사용자 요소를 다시 선택합니다. 마우스 오른쪽 버튼을 클릭하여 추가 메뉴 가 나타나면
을 선택 합니다. 그런 다음 이 새 요소를 선택하여 해당 제어판을 봅니다(그림 6.4 참조).테스트 계획에서 두 개의 JDBC 요청을 만들 것입니다. 첫 번째는 모든 '실행 중인' VM 인스턴스를 선택하는 것이고 두 번째는 '삭제' VM 인스턴스를 선택하는 것입니다(분명히 이를 특정 데이터베이스에 적합한 예제로 변경해야 함). 아래에 설명되어 있습니다.
다음 속성을 편집하여 시작합니다(그림 6.5 참조).
- 이름을 ' VM Running '으로 변경합니다.
- 풀 이름 입력: ' myDatabase '(구성 요소와 동일)
- SQL 쿼리 문자열 필드를 입력합니다.
- 매개변수 값 필드에 ' Running ' 값을 입력합니다.
- ' VARCHAR ' 로 매개변수 유형을 입력하십시오 .
다음으로 두 번째 JDBC 요청을 추가하고 다음 속성을 편집합니다(그림 6.6 참조).
- 이름을 ' VM Expunging '으로 변경합니다.
- 매개변수 값의 값을 ' 말소 '로 변경하십시오.