簡體   English   中英

我是否需要在iPod touch,iPad和iPhone上單獨測試?

[英]Do I need to separately test on iPod touch, iPad and iPhone?

我想開始為iOS開發。 來自Android開發背景,我知道您可以獲得更多類型的設備,更好的測試將是,因為所有設備都有完全不同的規格,並且在您的測試設備中可能完美運行的設備甚至可能無法運行另一個,更別說好看了。

我知道在實際設備上進行測試非常重要,因為在仿真器上測試的內容有很多限制,因此我決定使用實際設備。

但是,iOS世界中還有大量設備可供使用! iPod touch,iPad和iPhone各有幾代和不同的配置(8GB版本與16GB版本,WiFi版本,3G版本等)。 不同的屏幕尺寸,以及寬高比在各設備和包含的傳感器之間是非常不同的。

我認為讓應用程序在各種設備上運行應該不難,但是有必要對你計划支持的所有設備類型進行實際測試嗎? Apple並不以其低廉的價格而聞名,我希望將起始成本保持在盡可能低的水平。

因此,得出結論:是否有必要/建議在iOS開發世界中測試盡可能多的設備類型?

一個小小的澄清:我特別詢問是否有可能存在與特定設備/設備系列相關的兼容性問題,我無法通過在仿真器上進行測試或完全不同的設備來捕獲這些問題。

一般來說,模擬器測試和設備測試之間的主要能力差異是:

  • 模擬器不使用與設備完全相同的沙箱。 因此,例如,如果您的配置文件缺少Passbook憑據,則此問題將顯示在物理設備上,但不會顯示在模擬器上。
  • 模擬器通常不支持GPS,多點觸控,推送通知,藍牙和一些其他特定功能。
  • 在非視網膜顯示器上,iPhone 5+或(特別是!)視網膜iPad的模擬器視圖將在100%時幾乎無法使用,因為它的尺寸將超過您的屏幕尺寸。
  • 有一些非常罕見的崩潰只發生在模擬器上,少數只發生在設備上。
  • 模擬器並不總是支持您的應用支持的最早的iOS版本。 例如,當前版本的Xcode(如果你想為最新的iOS版本構建,你必須使用它)只有5.0+的模擬器可用。
  • 據我所知,使用Instruments進行的某些分析只能在模擬器中使用。

現在,在我的具體情況下,我嘗試測試我支持的每個屏幕分辨率之一以及我支持的每個主要操作系統版本之一。

這歸結為以下測試設備數組:

  • (480x320)iPhone 3GS運行4.3.3
  • (1136x640)iPod 5gen運行最新的6.x.
  • (960x640)iPhone 4S運行6.0
  • (1024x768)iPad第一代運行5.0
  • (2048x1536)iPad第4代運行最新的6.x.

請注意,iPad mini與iPad 1st gen的分辨率相同。

(我的選擇偏向於后來的iOS版本,因為我喜歡在推出它們的時候實現與所有Apple的時髦可選功能的集成。如果其中一個6.x設備運行5.1,它可能會更加平衡。)

如果你不需要支持4.x,我個人會建議反對它,因為iTunes Connect不再為它收集崩潰報告而模擬器不再提供它。 當然,只有你可以決定你是否真的需要 ,如果你真的需要 ,你可以把重點放在那里,因為Xcode不會警告你,如果你使用的是僅在5.0中引入的API,這會使任何設備崩潰運行4.x.

請注意,有一些方法(有大量准備)降級設備上的iOS版本,所以如果你真的想測試更多版本而不是設備,你可以(付出很多努力)。 但無論如何,你可能最好還是為此培養一批強大的beta測試者。

雖然這顯然是巨大的,以測試所有可能的設備,iOS的生態系統比Android 嚴格,這樣你就可以在一定程度縮小領域。

您可以從限制目標iOS版本開始。 無論如何,這將削減許多舊設備。 所有iOS設備的iOS6份額現在可能在發布4個月后約為75%; iOS5 + iOS6高達90%。 如果你剛剛開始為iOS開發,你可能只是針對iOS6。

這意味着您的最低硬件平台是iPad2 / iphone3GS / ipodTouch4

設備總數

iPad:   2 3 4 mini
iPhone: 3GS 4 4S 5
iPod:   4 5

十個設備。

但是你不需要全部測試它們。 你明智地把它縮小到......

iPad:   mini + one of the retina models
iPhone: 3GS + 5

用於日常測試。

顯然,如果想更背兼容,只需更換低端測試模型較低規格的設備(iPhone 3日,iPad 1)。

存儲容量的差異(例如8GB與16GB)將無關緊要。

根據您的項目,您需要特別注意一些硬件功能。 顯而易見的是視網膜與非視網膜顯示。 定位服務的硬件功能在模型之間特別細微。

Lowendmac有一個非常徹底的iPhone對比圖表 ......

我認為讓應用程序在各種設備上運行應該不難,但是有必要對你計划支持的所有設備類型進行實際測試嗎?

這取決於你打算構建什么樣的應用程序。 例如,通用應用程序可以在小屏幕和大屏幕設備上運行,但每個應用程序可能會有不同的表現,因此您希望能夠同時嘗試這兩種設備。 許多應用專門針對iPad,因此顯然不需要在小型設備上進行測試。 iPod Touch和iPhone非常相似,因此在一個或另一個上進行測試通常就足夠了。

簡而言之,您不必擁有每個設備的每個版本,並且您可能不必在所有已發布的iOS版本上進行測試。 但您確實希望盡可能多地在不同的設備和操作系統版本上測試您的產品。 因此,培養一組測試人員,他們將通過在他們的設備上試用您的應用來幫助您。 iOS開發人員計划允許您精確地向您的帳戶添加100個測試設備,以便您可以在許多不同的情況下測試您的應用程序。

在iPod touch上進行測試通常不值得。

在iOS世界中,通常有iPhone / iPod,iPhone 5 / iPod第5代和iPad。

所以,總共有3種屏幕尺寸。

如果你計划的目標不僅僅是最新的操作系統(iOS 6),那就是測試的復雜性。僅僅針對iOS 5,iOS 6幾乎是你需要測試的目標數量的兩倍。

我試着保持簡單。 我在我的iPhone 5和iPad上測試。 這兩個都運行iOS 6.對於iOS 5和小型iPhone,我依賴於模擬器。

我為Android和iOS開發,所以我得到了這個問題的來源。 我很幸運能夠在大多數不同的iOS設備上進行開發,我想說在大多數情況下,我會覺得在我的用戶將使用的最先進的設備上進行測試很舒服。 如果它在iPOd第三代上順暢運行,那么它將在iPhone 4S,5等上運行得非常流暢。對於iPhone 5的不同屏幕高度,模擬器非常適合鋪設它。

您需要考慮的事項是,您的應用程序是否可以選擇僅使用手機具有的某些功能,例如撥打電話。 此外,如果你想制作一個iPad或通用應用程序,擁有一個真正的iPad會非常方便,但模擬器確實非常好用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM