Webship-js와 라디오 버튼 테스트
Source: Dev.to

라디오 버튼은 한 번에 하나의 옵션만 선택해야 할 때, 예를 들어 계정 등록 설정, 사용자 권한, 혹은 가시성 규칙 등에서 웹사이트에서 흔히 사용됩니다. 이러한 선택은 시스템 동작에 직접적인 영향을 미치므로, 선택된 옵션이 올바르게 저장되고 페이지를 저장·다시 로드한 뒤에도 변하지 않는지 확인하는 것이 중요합니다.
이 글에서는 Webship‑JS를 사용해 Drupal CMS 웹사이트에서 라디오 버튼 동작을 자동으로 검증하는 방법을 보여주며, 선택이 기대한 대로 정확히 작동하는지 확인합니다.
라디오 버튼 선택하기
Webship‑JS는 라벨 텍스트, 값, 혹은 CSS 선택자를 이용해 라디오 버튼을 선택하는 단계 정의를 제공합니다.
When (I | we) select radio button "([^"]*)?"
예시
| 단계 | 설명 |
|---|---|
When I select radio button "Male" | 라벨 Male이 붙은 라디오 버튼을 선택합니다 |
When I select radio button "female" | 라벨 female이 붙은 라디오 버튼을 선택합니다 |
When I select radio button "#gender-male" | CSS 선택자 #gender-male를 사용해 라디오 버튼을 선택합니다 |
When we select radio button "option1" | 라벨 option1이 붙은 라디오 버튼을 선택합니다 |
실제 테스트 상황
아래는 Drupal CMS 시스템에서 라디오 버튼을 테스트하는 실용적인 예시입니다. 테스트는 라디오 버튼 옵션을 선택하고, 구성을 저장한 뒤, 올바른 설정이 유지되는지 검증합니다.
Feature: Radio Button Validation for Account Registration Settings in Drupal CMS
Performed as an administrator.
Scenario: Validate radio button selection
Given I am on the homepage
When I click "Log in"
And I fill in "#edit-name" with "info@webship.co" by attr
And I fill in "#edit-pass" with "d" by attr
And I press "#edit-submit" by attr
And I go to "/admin/config/people/accounts"
And I scroll down 500
And I select radio button "Visitors, but administrator approval is required"
And I press "Save configuration"
And I scroll down 500
Then the radio button "Visitors, but administrator approval is required" should be selected
And the radio button "Administrators only" should not be selected
왜 중요한가?
예를 들어 “Youth”(청년) 연령대를 선택했는데 나중에 시스템이 당신을 “Old Age”(노년)으로 분류한다면 어떨까요? 이런 예상치 못한 변화는 라디오 버튼 처리에 문제가 있음을 나타냅니다. UI는 언제나 하나의 명확한 선택만을 반영해야 합니다.

추가 읽을거리
Webship‑JS의 단계 정의에 대해 더 알아보세요:
- 문서 사이트:
전체 기사 보기: