테스트의 테스트 변수 섹션에서 변수를 선언하지만 테스트 전체에서 대체될 수 있는 필드의 참조로 변수를 사용할 수 있습니다. 테스트 변수에서 데이터를 대체하는 작업은 테스트 데이터 소스 보기의 테스트 변수 창을 사용하여 수행됩니다. 변수 선언 시 기본값이 주어집니다. 변수 설정 명령문을 사용하여 값을 변경할 수도 있습니다. 변수 설정 명령문은 테스트 편집기의 추가 메뉴와 삽입 메뉴를 사용하여 작성됩니다. 변수를 하드 코딩된 값으로 설정하거나 설정 명령문 앞에 표시되는 참조 또는 데이터 풀과 같은 데이터 소스에서 값을 검색할 수 있습니다.
테스트 간에 변수를 공유하려면 두 테스트 모두 동일한 이름을 가진 변수를 포함해야 하며 변수 모두 표시 위치 옵션이 이 사용자의 모든 테스트로 설정되어야 합니다. 이러한 조건이 충족되고 스케줄에 여러 테스트가 배치된 경우에는 한 테스트에서 변수에 설정한 데이터를 다른 테스트에서 사용할 수 있습니다.
테스트 간에 데이터를 공유하는 일반적인 이유는 데이터 상관을 수행하기 위해서입니다. 데이터가 상관되면 변수가 한 테스트의 요청에서 발생하는 응답으로 설정되고 다른 테스트에서 수행되는 요청에서 사용됩니다. 직원 데이터베이스를 테스트 중이라고 가정합니다. 직원 작성 테스트는 직원 레코드를 작성하고 직원 수정 테스트는 직원 레코드를 수정합니다. 새 레코드가 작성되면 해당 레코드에 레코드 ID가 지정됩니다. 직원 작성 테스트의 응답에서 직원 수정 테스트로 레코드 ID를 전달하는 데 변수를 사용할 수 있습니다.
사용자 정의 변수는 서로 다른 가상 사용자 간에 공유되지 않습니다. 변수는 동일한 가상 사용자의 다른 테스트 사이에서만 공유됩니다. 또한 표시 위치를 이 테스트에서만으로 설정하면 테스트 모두 동일한 이름을 가진 변수를 포함하고 있어도 하나의 테스트에서 설정한 데이터를 다른 테스트에서 사용할 수 없습니다.
테스트 전체에서 데이터 풀의 데이터를 공유하도록 변수를 정의할 수 있습니다. 변수 설정 명령문의 값 필드를 데이터 풀에서 대체하여 이를 수행합니다. 이 방법으로 스케줄에 표시된 첫 번째 테스트가 데이터 풀에서 변수를 설정하여 스케줄의 다른 테스트와 공유할 수 있습니다.
데이터 풀에서 사용자 ID를 사용하여 애플리케이션에 로그인하는 두 개의 테스트가 있다고 가정합니다. 데이터 풀을 직접 사용하는 대신 첫 번째 테스트가 데이터 풀에서 변수의 값을 설정하고 두 테스트 모두 이 변수를 사용할 수 있습니다. 이 경우 두 테스트 모두 데이터 풀에서 동일한 레코드를 사용합니다. 이는 데이터 풀의 사용자당 한 번만 페치 동작과 비슷합니다. 그러나 한 번만 페치한다는 것은 재생하는 동안 가상 사용자가 데이터 풀에서 하나의 레코드만 가져옴을 의미합니다. 테스트가 루프에 있고 가상 사용자가 테스트를 여러 번 실행하는 경우에도 레코드 하나만 가져오는 제한은 유지됩니다. 사용자 정의 변수를 사용하면 가상 사용자가 루프를 통과할 때마다 새 레코드를 검색하고 두 테스트 모두 동일한 레코드를 사용할 수 있습니다.
배열 변수를 작성하여 변수에 여러 값을 추가할 수 있습니다. 2차 HTTP 요청을 작성한 경우 재생 중 사용자 정의 코드에서 사용될 수 있는 배열 변수에 요청의 전체 경로를 추가하십시오.