실제 iPhone 장비에서 iPhone 앱을 테스트해야하는 이유


23

iPhone 용으로 하나의 응용 프로그램을 개발했으며 이제 App Store에서 원합니다. 많은 iOS iOS 친구들이 실제 기기, 즉 iPhone에서 테스트 해 보라고 말했습니다.

그래서 실제 애플 아이폰 기기에서 애플의 아이폰 앱을 테스트해야하는 이유가 궁금합니다.


3
문제는 "내 장치와 거의 같음"입니다. 거의 같은 것만으로는 충분하지 않습니다. 작은 차이는 응용 프로그램의 큰 부분에 영향을 줄 수 있습니다. 실제로 하드웨어에서 테스트해야 할뿐만 아니라 다른 버전의 하드웨어 및 소프트웨어 (iOS 버전)에서 테스트해야합니다.
산호 도우

답변:


51

최소한 실제 장치에서 응용 프로그램을 테스트하여 응용 프로그램의 작동 방식을 확인해야합니다.

  • 실제 장치 하드웨어
  • 실제 인터넷 연결 (셀 네트워크 및 WiFi 사용 포함)
  • 마우스 대신 손가락
  • 백그라운드에서 실행되는 다른 앱과의 성능
  • CPU, 디스크 용량 및 메모리와 같은 iPhone의 제한 사항 ( A Simulator는 Emulator가 아닙니다 ).
  • 실제 상황 : 기차에서 또는 길을 걷고있는 동안 앱을 사용하기가 쉽습니까? 밝은 햇빛이나 비에 어떻습니까?

iOS 개발자는이 목록을 계속하십시오.


좋은데 .. :). 내가 생각해야 할 아주 간단한 것 : :) Thnaks
NSS

2
실제로 그는 모든 ios 버전 3/4/5/6뿐만 아니라 (iphone3 / 3g / 4 / 4s / 5) 모든 장치를 대상으로 테스트하거나 해당 장치 / 버전을 명시 적으로 제외해야합니다.
ott--

에뮬레이터 링크가 아닌 시뮬레이터에 감사드립니다. 나는 둘 사이에 차이점이 있다는 것을 결코 알지 못했습니다.
Krishnabhadra 2019

오픈 디바이스 테스트 랩이 생겨나 고 있습니다 (예 : mobile.smashingmagazine.com/2012/09/24/…) . 이웃에있을 수도 있습니다. 구글 "모바일 테스팅 랩" "오픈 디바이스 랩"
Jan Doggen

20

에뮬레이터로 테스트 할 때 알 수없는 한 가지는 실제 장치를 손에 들고 화면에서 손가락을 미끄러지는 사용자에게 실제로 느끼는 것입니다. 결과적으로 랩톱에서 터치 패드로 시뮬레이션 할 때 매끄럽게 보였던 사용자 동작이 실제 장치 사용에 상당히 번거로울 수 있습니다. 응용 프로그램이 정상인지 확인하려면 실제 장치로 테스트하십시오.

실제 장치로 테스트해야 할 또 다른 것은 배터리 소비입니다. 시뮬레이터 개발자가 툴에서 얼마나 잘 재현했는지에 의존하는 것보다 실제 장치로 테스트하는 것이 훨씬 안전합니다.

시뮬레이터에서 충분히 가깝지 않은 다른 것들이있을 수 있습니다. 예를 들어 랩톱에서 소리가 나는 방식은 실제 전화와는 다를 수 있습니다. 진동은 시뮬레이터로 바로 잡을 수있는 또 다른 예입니다. 자이로 센서가 실제 전화에서 작동하는 방식. GPS / 위치 관련 사항. 기타 등등 ...


시뮬레이터 대 실제 장치 테스트는 매우 중요한 문제입니다. 과거의 프로젝트 중 하나에서 상업적 성공의 중요한 부분은 이러한 종류의 테스트 사이의 신중한 균형 조정이었습니다 .

하나가 요청할 때 실제 작업이 시작 하는 이유 를 선택할 수있는 이유를 따기에-device 및 특별한 경우와 상황에서 시뮬레이터 테스트.

장치 테스트를 무시하면 제품이 최종 사용자의 손에 닿을 위험에 노출되어 개발에 드는 모든 노력이 완전히 중단됩니다. 그러나 시뮬레이터 테스트는 훨씬 저렴하고 자동화하기가 훨씬 쉽습니다. 맹목적으로 온 디바이스 전용 테스트를 고수하는 경우 릴리스가 경쟁 업체에 비해 상당히 늦고 더 비쌀 수 있습니다 .


3
사용자 경험 부분을 강조하기 위해 +1 앱 스토어에서 애플리케이션을 공유 할 때 매우 중요한 부분입니다.
산호 도우

1
화이트 보드에 대해 장치와 시뮬레이터를 테스트하는 데 훨씬 더 많은 비용이 든다는 의견이있었습니다. 나는 그것이 당신의 대답에 포함시키는 것이 좋을 것이라고 생각합니다. 그것 없이도 +1.
psr

@ psr 당신이 그것을 좋아 기쁘게 생각합니다-당신이 제안한대로 답변을 업데이트
gnat

7

경험과 최고의 투표 답변에서 이륙 :

  • 마우스 대신 손가락이 Windows Phone 7 용 Decimation X2를 개발할 때 가장 큰 차이가있었습니다. WP7이없고 WP7이 출시되기 전인 에뮬레이터에서 코딩되었습니다. Microsoft가 자사의 전화에 출시 타이틀을 갖도록 초대받은 것처럼 마지막 문장이 귀하에게 의미가없는 경우 출시 전에 무료 WP7을 받았을 수 있습니다. 우리가 사용자가 손가락으로하고 싶었던 것은 실제 전화에서는 매우 어려웠지만 마우스로는 쉽지 않았습니다. 그리고 그것은 스크린 에지 케이스와 관련이 있습니다. 불행히도 우리 게임은 손가락이 항상 화면 가장자리에 있어야하는데, 일부 휴대 전화는 화면이 굵고 화면이 두껍기 때문에 힘들었습니다. 우리는 실제로 이것을 고치기위한 패치를 내놓았습니다. 이는 우리의 모든 최초 사용자에게 악의적이고 잠재적으로 사용 불가능한 것으로 나타났음을 의미합니다. 우리 게임의 버전. :(

  • 다른 하드웨어 속도는 다음으로 가장 큰 차이였습니다. Xbox 360 버전의 게임을 가져와 프레임 속도의 절반 (60fps ~ 30fps)과 1/3 GHz (3.0GHz ~ 1.0GHz)로 적절하게 다운 그레이드하는 부정확 한 방법으로 문자 그대로 추측해야했습니다. 잘못된. 물론 프로세서는 달랐으며 우리는 이것을 알고있었습니다. 하드웨어가 없으면 우리는 절름발이 추측으로 남았습니다. 우리는 WP7이 없었기 때문에 우리의 선택이 아니었지만, 지금 당신과 함께 나누고있는 교훈을 배웠습니다. 일부 휴대 전화에서는 게임의 가장 집중적 인 부분에서 프레임이 떨어졌습니다. :( 그런 둔화가 그런 강렬한 부분에 적합하다고 가정했을 때 아무도 신경 쓰지 않는 것 같았습니다. 따라서 큰 문제는 아니었지만 요점은 다음과 같습니다.

실제 하드웨어에서 테스트하십시오. 다양한 전화 하드웨어를 코딩 할 때 성능이 문제가되는 경우 저가형 하드웨어를 테스트하십시오.


6

iPhone Simulator는 iPhone 자체가 아닌 일부 API를 구현합니다 (iPhone이 내 지식으로 SAX 만 지원하는 DOM XML API입니다. 이것은 지금까지 변경되었을 수 있습니다).

그것은 또한 당신이 응용 프로그램을 '느낄'수있게 해줍니다. 오른쪽 버튼이 엄지 손가락 아래에 있습니까? iPhone이 앱을 실행하고 있습니까? 시뮬레이터는 에뮬레이터가 아니며 해당 앱의 데스크톱 Mac에 Cocoa Touch를 추가하기 만하면 작동합니다. 메모리 부족 경고 등을 시뮬레이션해야합니다.


5

주머니에 시뮬레이터를 가지고 다니는 많은 사용자가 없기 때문에.

편집 : 시뮬레이터 (또는 에뮬레이터)에서 앱을 테스트 할 때마다 실제적으로 100 % 정확한 표현이 될 수없는 가짜 장치를 사용하고 있습니다. 에뮬레이터는 시뮬레이터보다 정확할 수 있지만 여전히 차이가 있습니다. 100 % 정확한 에뮬레이터는 장치 자체입니다.

시뮬레이터에서 코드를 설계, 테스트, 최적화하면 애플리케이션이 시뮬레이터에서 최적으로 작동하도록 미세 조정됩니다. 그러나 사용자에게는 시뮬레이터가 없습니다. 잘못된 기기를 타겟팅하고 있습니다. 매우 유사한 것; 그러나 사용자가 사용할 장치와 동일하지는 않습니다.

여러 가지 문제가 발생할 수 있습니다. 버그와 같은 심각한 문제, 충돌은 확실히 최우선 과제입니다. 그러나 다른 사람들도 있습니다. 인체 공학과 같은. 시뮬레이터를 손에 쥐십시오. 단지 시도. UI 요소는 다른 화면에서 렌더링 될 수 있으며, 다른 색상 렌더링과 확실히 다른 크기 (예를 들어 레티 나 맥북을 사용하여 완전히 해결되지는 않지만 아름다운 레티 나 디스플레이로 인해 악화되는 문제)가 있습니다. 태양의 장치에서 그처럼 아름다운 회색 음영이 똑같이 구별됩니까?

속도의 미묘한 차이와 다른 센서 에뮬레이션 (또는 그 부족)은 때때로 경험을 극적으로 변화시킬 수 있습니다.

애플리케이션이 인터넷 연결에 의존하는 경우 LTE, 3G, EDGE 또는 GPRS간에 전환하거나 다른 시나리오를 테스트하거나 다른 캐리어를 테스트 할 수있는 방법이 없습니다.

탈옥 된 기기를 지원 하시겠습니까? 아마도 당신은 아니지만, 당신이 있다면, 당신은 아마도 하나의 앱으로 기꺼이 테스트 할 것입니다. 또는 그렇지 않은 경우 탈옥 환경을 감지하고 있다고 확신하십니까?

시뮬레이터에서 개발중인 iPad 게임은 사용자가 몸무게를 잡고 손가락을 사용하여 플레이 할 때에도 동일하게 사용할 수 있습니까? 의도하지 않은 다중 터치로 인해 안전한 단일 터치 (또는 대칭 이중 터치) 시뮬레이터 환경에서 예상 할 수 없었던 앱이 중단 될 수 있습니까?

실제로 땅을 떠난 적이없는 조종사가 지휘하는 비행기에 편하게 탑승 하시겠습니까?

결론은 배송 전에 사용자가 사용하는 것과 동일한 장치를 사용하십시오. 그들 중 누구도 시뮬레이터를 사용하지 않을 것입니다.


4
단순하고 유효한 감정이지만 한 문장 이상의 세부 사항은 커뮤니티에 대한 답변의 가치를 크게 높여줍니다.
지미 호파

3

실용적인 이유 :

1) "메일 보내기"기능이 없습니다.

2) 기기를 뒤집어 놓을 수 없습니다.

그리고 물론 이미 말한 이유 :

3) 낮은 대역폭

4) 시뮬레이터에 비해 매우 작은 계산 능력

5) Open GL 통화는 시뮬레이터에서 약간 다르게 구현됩니다.

6) 디스크 공간 / RAM


최신 시뮬레이터 및 에뮬레이터를 사용하면 장치를 회전시킬 수 있습니다. 브라우저 기반 브라우저 (예 : BrowserStack에서 제공하는 Nokia Lumia 에뮬레이터)
Dan Dascalescu

일부 회전은 .. 시도 .. 버그 또는 구현되지 않습니다 :) 애플은 상태 : developer.apple.com/library/content/documentation/IDEs/...
ingconti

3

하드웨어 성능이 일반적으로 나쁜 것으로 언급되었지만 OpenGL ES에서는 그렇지 않습니다. 시뮬레이터는 소프트웨어로 구현하므로 성능이 크게 향상 되는 경우는 드물지 않습니다. 장치 자체에서 실행되는 동안 되는 .

또한 Open GL ES의 소프트웨어와 하드웨어 구현간에 약간의 차이가 있습니다. 예를 들어 쉐이더 정밀도 힌트는 다른 출력을 가질 수 있습니다.


2

iOS (또는 Android 또는 Windows Phone) 용으로 구현할 때 데스크톱이 아니라 장치 용으로 개발됩니다. 일부 계산 / 자원이 많은 응용 프로그램의 경우 실제 장치의 시뮬레이터 BUT 문제에 대한 정상적인 동작을 의미 할 수 있습니다.

따라서 장치를 처음부터 테스트하지 않으면 이와 같은 상황이 이후 단계에서 발생할 수 있습니다.

  • 메모리 경고 / 충돌
  • 한 자리 OpenGL 프레임 속도

2

PushNotification , 카메라 사용 등과 같은 일부 기능 은 장치에서만 테스트 할 수 있습니다. 이것은 시뮬레이터에서 테스트 할 수없는 기능입니다.

또한 App Store에 제출하기 전에 실제 장치에서 앱을 테스트하면 앱이 거부 될 가능성이 줄어 듭니다. 때로는 시뮬레이터에서 앱이 제대로 작동하지만 실제 장치에서 충돌이 발생하기 때문에 앱 거부의 주요 원인입니다.


2

실제 장치와 에뮬레이터간에 실제 성능 차이가있을 수 있습니다. 우리는 에뮬레이터를 사용한 테스트 만 많은 경우에 응용 프로그램 속도가 매우 느리다는 것을 알았습니다.


3
아이러니하게도 내 앱 중 하나는 랩톱의 에뮬레이터보다 실제 장치에서 더 나은 성능을 보입니다.
Michael Itzoe

1
@nathan : EMULATOR보다는 SIMULATOR를 사용한다고 생각합니다! 안드로이드 SDK는 에뮬레이터를 가지고 있으며 iOS SDK는 시뮬레이터를 제공합니다. 에뮬레이터와 시뮬레이터에는 차이가 있습니다. 가요? 그래서 나는 단어 에뮬레이터를 시뮬레이터로 대체함으로써 당신의 글을 읽습니다. n nnx 2 ans :)
NSS

-1

OS에 따라 사용자 경험이 기기마다 다릅니다.

하드웨어 사양. 따라서 실제에서 iPhone 앱을 테스트해야합니다.

기기 – 마켓 플레이스에서 다양한 버전의 iOS를 실행하는 모바일 기기.

시뮬레이터는 최종 사용자가 직면 한 문제를 식별하는 데 유용하지만

원래 기기에서 앱을 테스트하면 전공을 식별하고 해결하는 데 도움이됩니다.

사용자의 우려.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.