실제 모바일 기기에서 테스트
  • 17 Dec 2024
  • 5 읽을 분
  • 기여자
  • 어두운

실제 모바일 기기에서 테스트

  • 어두운

기사 요약

Autify의 가장 큰 장점 중 하나는 풀사이즈 PC 브라우저 외에도 다양한 모바일 기기에서 테스트를 실행할 수 있다는 점입니다.

Autify를 사용하여 실제 모바일 기기에서 자동화된 테스트를 실행하면 다음과 같은 이점이 있습니다:

모바일 디바이스를 직접 소싱할 필요가 없습니다.
에뮬레이터에서는 볼 수 없는 실제 디바이스 고유의 동작을 확인할 수 있습니다.
자동화된 테스트를 반복적으로 실행할 수 있습니다.

하지만 실제 모바일 환경에는 고유한 특징과 한계가 있습니다. 따라서 성공적인 모바일 테스트의 핵심은 이러한 한계를 이해하고 테스트를 구축할 때 에뮬레이터 사용을 고려하는 것입니다.

이 문서에서는 실제 모바일 기기에서 테스트하는 방법과 일반적인 문제 및 해결 방법에 대한 팁과 요령을 확인할 수 있습니다.

1. Autify로 테스트할 수 있는 모바일 기기

Autify는 iOS 또는 Android 운영 체제에서 실행되는 다양한 스마트폰 및 태블릿을 지원합니다. 자세한 내용은 다음 문서를 참조하세요:

2. 모바일 디바이스와 에뮬레이터에서의 테스트의 차이점

실제 기기와 에뮬레이터(Chrome의 기기 모드)에서 테스트를 실행할 때 렌더링 엔진으로 인해 동작에 약간의 차이가 있습니다. 다음은 몇 가지 주요 차이점입니다:

  • 에뮬레이터에서의 테스트는 빠르고 쉽습니다. 하지만 사용자 환경에 따라 약간의 차이가 있을 수 있습니다.
  • 실제 기기에서 테스트하면 실행 속도가 느려지지만 렌더링은 사용자 환경과 일치합니다.

에뮬레이터에서 **[시나리오]**를 생성하거나 안정성을 확인할 때는 에뮬레이터를 사용하고, 에뮬레이터에서 실행 시 문제가 없음을 확인한 후 실제 기기를 사용하는 것이 좋습니다.

3. Autify로 실제 모바일 기기 테스트를 자동화하는 방법

다음은 Autify로 모바일 기기 테스트를 실행하는 권장 순서입니다:

  1. 모바일 크기의 창 크기로 [시나리오] 를 생성합니다.
  2. 실제 모바일 기기에서 테스트 실행

각 단계를 더 자세히 살펴보겠습니다.

3.1. 모바일 크기의 창 크기로 [시나리오]를 기록합니다.

이 작업을 용이하게 하는 방법에 대한 자세한 지침은 아래 문서에서 확인할 수 있습니다.

Chrome의 기기 모드에서 [시나리오] 를 녹화하고 사용자가 볼 것으로 예상되는 화면 크기를 선택하세요.

에뮬레이터에서 실행

실제 기기에서 테스트를 실행할 때 중요한 것은 먼저 모바일 에뮬레이터에서 테스트가 일관되게 성공하는지 확인하는 것입니다. 에뮬레이터에서의 테스트는 빠른 프로세스이므로 테스트를 반복적으로 실행하여 [시나리오] 를 완벽하게 만들 수 있습니다.

3.2. 실제 모바일 기기에서 테스트 실행

모바일 에뮬레이터에서 테스트가 안정적으로 실행되면 실제 기기에서 테스트를 실행할 준비가 된 것입니다. 실제 기기 테스트를 위해 [테스트 계획] 을 준비합니다. 디바이스 드롭다운 메뉴의 오른쪽에 있는 스마트폰 및 태블릿 목록에서 적절한 디바이스를 선택하세요.

실제 iOS 기기

Screenshot 2022-12-28 at 10.21.35 AM copy.png

실제 안드로이드 기기

Screenshot 2022-12-28 at 10.21.46 AM.png

일부 이전 버전의 실제 기기 환경에서는 선택한 기기(버전)가 지원되지 않는다는 알림이 표시됩니다. 해당 환경에서도 테스트를 실행할 수 있지만 테스트 결과는 지원되지 않습니다.

Screen_Shot_2022-03-10 21.47.33

4. 실제 모바일 디바이스와 에뮬레이터 중에서 선택하는 방법

실제 기기에서의 테스트와 에뮬레이터에서의 테스트는 모두 고유한 특성이 있습니다. 실제 모바일 기기에서 테스트가 원활하게 실행된 후에도 에뮬레이터를 활용하는 것이 좋습니다.

다음 두 가지 사항을 염두에 두세요.

4.1. 필요한 빈도와 시간에 따라 테스트 실행 계획 세우기

일반적으로 실제 모바일 기기에서 테스트하면 실행 속도가 더 빨라집니다. 실제 모바일 기기 테스트는 일반적으로 Autify 클라우드 환경의 모바일 에뮬레이터에서 테스트하는 것보다 10배 이상 실행 속도가 더 빠릅니다. 따라서 목적에 따라 에뮬레이터와 실제 디바이스에서 테스트하는 것이 좋습니다. 예를 들어 자주 실행해야 하는 테스트에는 에뮬레이터를 사용하고 주말에는 실제 모바일 기기에서 테스트를 실행하는 것이 좋습니다.

real-mobile-devices1

위 그림과 같이 실제 디바이스 테스트는 기본적으로 한 번에 하나씩 실행됩니다. 옵션으로 동시 테스트 실행 횟수를 늘릴 수 있습니다. 자세한 내용은 페이지 맨 아래에 있는 '실제 기기에서 여러 테스트를 동시에 실행하는 방법' 섹션을 참조하세요.

4.2. 실제 기기에서 지원되지 않는 기능을 사용할 때 에뮬레이터 활용하기

일부 기능은 실제 모바일 기기에서 테스트할 수 없으므로 에뮬레이터에서 테스트해야 합니다. 다음은 대표적인 예입니다:

  • 파일 업로드
  • 실제 iOS 디바이스에서 창 전환하기

위와 같은 테스트를 실행할 때는 에뮬레이터를 사용하여 기능을 테스트하세요.

5. 실제 모바일 기기에서 테스트할 때 발생하는 문제

모바일 기기 환경에서도 편안하게 테스트할 수 있도록 Autify를 개선하기 위해 지속적으로 노력하고 있지만, 모바일 기기 테스트는 기술적 어려움이 많은 영역입니다. 아래에서 실제 모바일 기기에서 테스트할 때 알려진 문제 목록을 확인할 수 있습니다.

5.1. 실행 속도

  • 실제 모바일 기기에서의 테스트 실행 속도는 [외부 디바이스 팜 환경] 에 따라 달라지며, [Autify 클라우드 환경] 에서 테스트를 실행하는 것보다 훨씬 느립니다.

5.2. 디바이스별 동작

  • 경우에 따라 PC의 녹화 환경에 존재하지 않는 요소가 테스트 안정성에 영향을 미칠 수 있습니다.

  • 예: OS에서 표시되는 확인 대화 상자

5.3. 클릭 단계 구현

  • 요소에 클릭 단계를 기록하면 대부분의 경우 탭 대신 클릭이 실행됩니다. 웹 페이지가 TouchEvent를 예상하고 수신하는 경우 클릭 단계가 이벤트를 트리거하지 않아 시나리오의 후속 단계가 실패할 수 있습니다. 웹페이지가 클릭을 포함한 MouseEvent를 수신하도록 업데이트하거나, 요소에 대한 JS 단계를 적용하여 프로그래밍 방식으로 터치 이벤트를 발송하세요. (이 동작은 에뮬레이터에서도 동일합니다.)
  • 경우에 따라 테스트 실행 엔진이 클릭/탭이 실행되어야 하는 정확한 좌표를 획득하지 못해 잘못된 위치에서 클릭/탭이 실행되는 경우가 있습니다. 실행된 클릭/탭 단계의 좌표가 잘못 정렬된 것으로 의심되는 경우 지원팀에 문의하세요.

5.4. 타이밍 문제에 대한 민감성

  • 실제 모바일 기기에서는 다른 환경보다 타이밍 문제가 더 자주 발생하는 경향이 있습니다. 이러한 문제는 페이지를 표시하는 데 걸리는 시간과 테스트를 실행하는 데 걸리는 시간 간의 불일치에서 비롯됩니다. 예시는 "버튼/링크를 클릭한 후 페이지가 전환되지 않는 경우가 있습니다" 섹션을 참조하세요.

5.5. 일시적인 문제

  • 외부 디바이스 팜의 디바이스 상태에 따라 알 수 없는 오류 또는 중단이 발생할 수 있습니다. 대부분의 경우 테스트를 다시 실행하면 문제를 해결할 수 있습니다. 그러나 오류가 반복적으로 발생하는 경우 주저하지 마시고 문의해 주세요.

6. 실제 디바이스에서 테스트할 때의 문제 해결

6.1. 버튼/링크를 클릭한 후 페이지가 전환되지 않는 경우

다음 예시를 살펴보세요:

  • 3단계: '데모 요청' 버튼을 클릭하면 페이지가 전환됩니다.
  • 4단계: 페이지 전환 후 화면에 표시되는 텍스트를 확인합니다.

아래에서 실제 iPhone에서 위 단계를 실행한 결과 예시를 확인할 수 있습니다. 4단계에서 페이지가 전환되지 않았습니다.

Screen_Shot_2022-03-11 12.59.26

Screen_Shot_2022-03-11 12.59.48

이 문제는 페이지 표시 타이밍과 테스트 실행 타이밍이 일치하지 않아 발생할 수 있습니다. 실제 디바이스 환경에서 더 자주 발생하는 경향이 있습니다.

실제 디바이스에서만 페이지 전환이 실패하고 다른 환경에서는 실패하는 경우 페이지 전환을 유발하는 작업 뒤에 [URL Should be] 어설션을 추가하면 해결될 수 있습니다.

Screen_Shot_2022-03-11 13.00.29

비슷한 문제가 발생하면 이 방법을 시도해 보세요.

6.2. 테스트 실행 환경마다 다른 사용자 계정을 사용하는 방법(모바일 기기에 국한되지 않음)

실제 기기를 포함한 다양한 환경에서 테스트를 병렬로 실행해야 할 때 테스트 실행마다 다른 계정을 사용하고 싶다는 사용자의 문의를 종종 받습니다. 이 경우 다음 예시와 같이 [JS Step]을 준비하여 이후 단계에서 반환된 값을 사용하는 것을 권장합니다.

/* 실행 환경에 따라 다른 사용자 계정이 반환되는 예제 *//
var userAgent = window.navigator.userAgent;

if (userAgent.indexOf('Android') >= 0) {
return ‘Android user’;
}
else if (userAgent.indexOf('iPhone') >= 0) {
return ‘iPhone user’;
}
else if (userAgent.indexOf('iPad') >= 0) {
return 'iPad user';
}
else {
return ‘Default user’;
}

6.3. 아이폰 [테스트 계획] 내에서 아이폰 테스트를 순차적으로 실행하는 방법과 안드로이드 [테스트 계획] 내에서 안드로이드 테스트를 순차적으로 실행하는 방법.

테스트가 [테스트 계획] 내에서 실행되는 순서를 지정할 수 있는 새로운 기능이 곧 출시될 예정입니다!

6.4. 실제 기기에서 여러 테스트를 동시에 실행하는 방법

기본적으로 실제 기기 환경에서는 한 번에 하나의 테스트만 실행할 수 있습니다. 선택적으로 두 개 이상으로 늘릴 수 있습니다! 실제 기기에서 여러 테스트를 동시에 실행하면 전체 테스트 시간을 줄일 수 있습니다.


이 문서가 도움이 되었습니까?

Changing your password will log you out immediately. Use the new password to log back in.
First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.