> For the complete documentation index, see [llms.txt](https://docs.hackle.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.hackle.io/ab-test/url-test/steps-of-an-url-test.md).

# URL 테스트 진행 방법

## 준비

{% stepper %}
{% step %}

### URL 테스트 생성하기

A/B 테스트 탭 > \[새 A/B 테스트 생성하기] 버튼 클릭 > 모달에서 \[URL테스트] 를 클릭하여 새 URL 테스트를 만들 수 있습니다.

![](https://2738466581-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLHRZjjknm5KdNgPtDsbl%2Fuploads%2Fgit-blob-6b203d75951961eec0dfa96243f32d97dea8eff4%2F2b21f5e-image_14c435949f47c665.png?alt=media)
{% endstep %}

{% step %}

### 검증할 가설 입력

실험을 통해 검증하려는 가설과 실험의 이름을 입력하면, 실험이 생성됩니다.

![](https://2738466581-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLHRZjjknm5KdNgPtDsbl%2Fuploads%2Fgit-blob-e0dbfe850f4331282d7adf05ec912505fb1764d2%2F04d2c81-image_208926feb4515a6e.png?alt=media)
{% endstep %}

{% step %}

### Group 설명 및 URL 입력

생성된 URL 테스트 상세 화면에서 \[URL 설정] 탭에서 각 그룹에 대한 설명을 입력하고 URL 을 입력하고 저장합니다.

![](https://2738466581-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLHRZjjknm5KdNgPtDsbl%2Fuploads%2Fgit-blob-b6f272d1e4c8bcc6489efff664946a53e4b32a57%2Fc33666d-image_04803a0a8973c2ae.png?alt=media)

그룹 A에는 URL 테스트가 시작되는 기존 버전의 URL을 입력합니다.

여러 URL을 실험 대상으로 설정하려면 \*\*\[+ OR 조건 추가하기]\*\*를 사용합니다. 예를 들어 `URL 1 or URL 2`로 설정하면, 두 URL로 유입된 트래픽이 모두 실험 대상이 됩니다.

#### 매칭 조건 선택

실험 범위와 URL 구조에 맞는 조건을 선택합니다.

* **정확히 일치하는**: 입력한 URL과 정확히 일치하는 경우만 포함합니다.
  * 입력 URL: `http://www.example.com/category/1/product/1/display/1`
  * 제외 예시: `http://www.example.io/category/1/product/1/display/1`
  * 제외 예시: `http://www.example.com/category/1/product/1/display/1/utm=source`
* **다음으로 시작하는**: 입력한 URL로 시작하는 모든 URL을 포함합니다.
  * 입력 URL: `http://www.example.com/category/1/product/1`
  * 포함 예시: `http://www.example.com/category/1/product/1/display/10`
  * 포함 예시: `http://www.example.com/category/1/product/1?search_keyword=example&utm..`
* **다음을 포함하는**: 입력한 구간을 포함하는 모든 URL을 포함합니다.
  * 입력 값: `promotion/best-seller/product/1/display/10`
  * 포함 예시: `www.hackle.io/promotion/best-seller/product/1/display/10`
  * 포함 예시: `www.hackle.co.kr/promotion/best-seller/product/1/display/10/utm=source`

{% hint style="info" %}
한글 URL은 인코딩된 값과 동일하게 비교됩니다. 한글이 포함된 URL도 그대로 입력할 수 있습니다.
{% endhint %}
{% endstep %}

{% step %}

### 실험 연동 코드 확인 및 삽입

상단에서 \[코드 확인하기] 버튼을 클릭하면 [코드 가이드](https://docs.hackle.io/ab-test/url-test/url-test-integration)를 확인할 수 있습니다.

해당 코드를 실험하려는 url 의 페이지의 기존 코드 head 안에 추가하면 됩니다.

실험하기 위해 입력한 url 이 3개라면, 3개 페이지의 head 안에 모두 넣어주셔야 실험이 정상작동합니다.

![](https://2738466581-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLHRZjjknm5KdNgPtDsbl%2Fuploads%2Fgit-blob-e3c3e7700d6aa1900b80da66ae64264eb35db5b1%2F23c2451-image_48782339ed573ca8.png?alt=media)
{% endstep %}

{% step %}

### 지표 설정

상단 \[지표 설정하기] 를 눌러서 이 실험의 영향, 성공 여부를 측정하기 위한 지표를 추가해주세요.

![](https://2738466581-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLHRZjjknm5KdNgPtDsbl%2Fuploads%2Fgit-blob-c4d492dd835555d44b24dedbe4b1121cedf7b8fe%2Fdb137f0-image_f5ca974304c0e7fc.png?alt=media)
{% endstep %}

{% step %}

### 타켓팅 설정

\[타켓팅 설정하기] 를 통해 이 실험에 노출될 타켓을 설정할 있습니다.

![](https://2738466581-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLHRZjjknm5KdNgPtDsbl%2Fuploads%2Fgit-blob-5e3124fa2bc2687a2b70212581b9dbb24cd4d52e%2F990ba41-image_bd9cc767957e3002.png?alt=media)
{% endstep %}
{% endstepper %}

## 상호 배타적 설정

여러 실험이 동시에 진행되거나, 트래픽을 분리해서 관리하고 싶을 경우 상호 배타 설정을 통해 설정할 수 있습니다.

상호 배타적 설정은 아래 이미지 처럼 \[상호 배타적 설정] 탭을 클릭해서 설정할 수 있습니다.

![](https://2738466581-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLHRZjjknm5KdNgPtDsbl%2Fuploads%2Fgit-blob-c87ba58ef33551eee4ed483c35cb77d293448fa7%2F407f540-image_190a8e7b6ba33885.png?alt=media)

## 진행

{% stepper %}
{% step %}

### 실험 시작

준비가 끝났다면, 상단의 \[시작하기] 를 눌러서 URL 실험을 시작할 수 있습니다. 이후 보여지는 모달에서 URL과 연동 여부를 확인합니다.

![](https://2738466581-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLHRZjjknm5KdNgPtDsbl%2Fuploads%2Fgit-blob-993c663c3be0c643db4d4d8d53f2fae6e82bdb52%2F102cc00-image_308ca6896cc4cada.png?alt=media)
{% endstep %}

{% step %}

### 진행 상태 진단

실험 진행을 위해, 테스트 연동 여부, 등록한 이벤트 전송 여부 등을 확인해드립니다.

![](https://2738466581-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLHRZjjknm5KdNgPtDsbl%2Fuploads%2Fgit-blob-75326e9474245ece33e23bac985e91fe801dd8b0%2Fb4629be-image_1a107323f5a1f533.png?alt=media)
{% endstep %}

{% step %}

### 트래픽 할당

A/B 테스트에 할당하고자 하는 트래픽의 비중은 0(%)부터 100(%)까지 입력 가능하며, 설정한 그룹의 갯수만큼 1/N 으로 분배됩니다.

실험 시작 이후에도 트래픽 비중을 변경할 수 있지만, 이전에 설정되어 있던 값보다 낮은 값으로는 변경할 수 없는 점 참고 바랍니다.

![](https://2738466581-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLHRZjjknm5KdNgPtDsbl%2Fuploads%2Fgit-blob-36742e0587a6589ee785702299c7e998b6074b50%2F19bdf46-image_1abc66097fe6a526.png?alt=media)
{% endstep %}

{% step %}

### 데이터 분석 및 결과 해석

실험이 진행되면 설정하신 \[지표] 에 대한 상세 데이터를 보여드립니다.

실험 중에 지표를 추가하더라도 해당 지표는 테스트 시작 시점부터의 데이터를 기반으로 계산되니, 진행 중 언제라도 추가하셔도 됩니다.
{% endstep %}

{% step %}

### 진행 상태 변경

실험이 진행된 이후에도, **일시 정지** 혹은 **버전 관리** 등을 사용할 수 있습니다.
{% endstep %}
{% endstepper %}

### URL 조건 설정 시 Trailing Slash 주의사항 <a href="#url-trailing-slash" id="url-trailing-slash"></a>

URL 조건에 전체 URL을 입력할 때는 도메인 뒤의 trailing slash(`/`)에 주의해야 합니다.

브라우저에서 다음 URL로 접속하더라도:

```
https://hackle.io?utm_source=naver
```

JavaScript SDK가 확인하는 URL은 브라우저의 URL 정규화에 따라 다음과 같이 표현될 수 있습니다.

```
https://hackle.io/?utm_source=naver
```

#### **다음을 포함하는** 연산자 <a href="#contains" id="contains"></a>

`다음을 포함하는` 연산자는 URL의 trailing slash를 정규화하지 않고 문자열 포함 여부를 확인합니다.

따라서 다음 조건은 매치되지 않을 수 있습니다.

| 대시보드 설정 URL                                                                | 실제 브라우저 URL                           | 결과       |
| -------------------------------------------------------------------------- | ------------------------------------- | -------- |
| [https://hackle.io?utm\_source=naver](https://hackle.io/?utm_source=naver) | <https://hackle.io/?utm_source=naver> | 매치되지 않음. |

{% hint style="warning" %}
대시보드에서 설정한 URL의 조건과 매치되지 않으면 해당 URL은 실험의 대상이 되지 않습니다.
{% endhint %}

{% hint style="info" %}
쿼리 파라미터 포함 여부만 확인하려면 전체 URL보다 `utm_source=naver`처럼 필요한 부분만 `다음을 포함하는` 조건으로 설정하는 것이 trailing slash의 영향을 줄일 수 있습니다.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.hackle.io/ab-test/url-test/steps-of-an-url-test.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
