2012-11-05 181 views
2

我是iPhone/iPad開發新手,我即將完成我的第一個應用程序,我正在尋找一些一般性建議。在真實設備與模擬器上測試iOS測試

我知道測試實際設備而不僅僅是模擬器很重要。人們在交易設備上進行測試時通常會遇到什麼類型的東西,而他們在模擬器中看不到?

該應用程序本身主要是一種方式來跟蹤在線交易和該類型的事情。它不需要任何特殊的東西來使用諸如相機或GPS之類的東西。

+0

這個問題可以有一定的幫助:「模擬器的運行速度比實際設備慢了許多」 http://stackoverflow.com/questions/380062/iphone-device-vs-iphone-simulator –

回答

8

這只是一般用法測試。該設備在與計算機完全不同的環境中運行,這是確保將應用推送至設備的最佳方式,不會有任何意外情況發生。例如,手機/手機可能有有限的數據覆蓋範圍,內存不足,來電等等。這些情況在設備上更常見,然後人們通過模擬器模擬它。從硬件角度來看,該設備使用與Mac不同的處理器體系結構,這也需要考慮(不像其他情況那樣多,但需要覆蓋您的基地)。 Mac也不能可靠地模擬RAM,光盤空間,處理器速度等等,因此在這裏對設備進行測試也很有用。

顯然有一些功能只能在相機,GPS等設備上進行測試(而不是明顯的iPod庫使用情況),並且如果您的應用使用它們,則不會在設備上進行測試。

整體如果您打算將您的應用程序發佈到App Store或至少設備上,那麼值得在設備上進行測試。只有到那時,您才能確定它會在您打算定位的平臺上按預期行事並執行。 模擬器畢竟只是一個模擬器,而不是真實的東西!

+0

是否有某些東西只能在一種類型的設備上測試,我們確定它可以在所有設備(如磁盤空間)上正常工作?你能舉個例子在IPad2和iPhone 4上測試,然後在模擬器中做一些解析測試嗎?還是應該在外面的每一臺設備上進行測試? – user1591020

+0

只能在一部iPhone上擺脫嗎? – user1591020

+0

只能在物理電話上正確測試傳入的電話。總的來說......這取決於你想要承擔多少風險。當然,對於獨立開發者來說,他們不會有完全選擇可用的設備,所以他們只能測試一個有限的子集。你可以用iPad 2和iPhone 4,這是一個體面的傳播。你會缺少視網膜iPad,如果你的應用程序是QuartzCore的話,會導致性能問題。我強烈建議至少在一部手機和一個「pad」設備上進行測試,否則您完全錯過了一個平臺。 – WDUK

-1
  • 模擬器運行速度比真實設備慢很多。
  • 真實設備可能在內存不足時使用內存,反之亦然。
+2

,你有證據/一個來源?我不認爲這是事實(無論如何不是在Mac Pro上) – WDUK

+0

@WDUK:這是我運行OpenGL應用程序時的經驗。 – SurvivalMachine

1

首先:用戶體驗非常不同。

基於鼠標的交互與觸摸交互非常不同。聚焦於顯示器感覺非常不同,然後在手掌上觀看設備。

此外,在模擬器和真實設備上運行的動畫體驗可能會非常不同。

而在模擬器中的用法不會告訴你任何有關在真實設備上看到的電池消耗。

我的意見:每一個將被運送到App Store或客戶進行測試的應用程序應該被測試幾個不同的真實設備。沒有理由。

0
  • 在應用程序內購買,如果你有他們納入
  • 取向(不是 他們是在模擬器不可用,但很容易將它忘記 那裏!)
  • 應用程序生命週期測試 - 將您的應用程序帶到前臺,並且背景爲 。
  • 網絡訪問 - 在通過無線或蜂窩網絡從設備訪問網絡時與您Mac上的LAN/wifi訪問網絡有關。如果您的應用程序使用網絡中的任何資源,那麼在名爲Reachability的保護下進行巨大的測試。如果在使用任何此類資源之前無法訪問網絡,則必須按照應用商店的要求提供警報。
相關問題