早期版本的iOS 13安全漏洞很多,因此更改了iOS 14的測試流程
11月23日消息,在最新版本的iPhone和iPad操作系統(tǒng)出現(xiàn)一系列缺陷之后,蘋果對軟件測試方法進(jìn)行了改革。
在與公司軟件開發(fā)人員舉行的最近一次內(nèi)部“啟動”會議上,蘋果軟件主管克雷格·費(fèi)德里吉(Craig Federighi)和斯泰西·利???Stacey Lysik)等副手們宣布了軟件測試方面的變化。新方法要求蘋果開發(fā)團(tuán)隊(duì)確保未來軟件更新的測試版,也就是所謂的“每日構(gòu)建(Daily build)”,在默認(rèn)情況下禁用未完成或有缺陷的所有功能。然后,測試人員可以通過一個稱為Flags的全新內(nèi)部流程和設(shè)置菜單有選擇地啟用這些特性或功能,從而能夠?qū)⒚總€單獨(dú)添加特性會對系統(tǒng)產(chǎn)生何種影響相互隔離開來。
今年9月,當(dāng)蘋果公司的iOS 13操作系統(tǒng)與iPhone 11系列智能手機(jī)同時(shí)發(fā)布時(shí),iPhone用戶和應(yīng)用程序開發(fā)者發(fā)現(xiàn)了一連串的軟件故障:應(yīng)用程序崩潰或啟動緩慢;手機(jī)信號參差不齊;應(yīng)用程序出現(xiàn)了用戶界面錯誤,比如消息、系統(tǒng)搜索都出現(xiàn)問題,電子郵件也存在加載問題。而通過iCloud共享文件夾以及將音樂流媒體傳輸?shù)蕉嘟MAirPods上等新功能要么被推遲,要么仍未實(shí)現(xiàn)。毫不客氣的說,這次操作系統(tǒng)升級是是蘋果歷史上最麻煩、最粗糙的。
“iOS 13在繼續(xù)摧毀我的士氣,”知名開發(fā)者馬爾科·阿蒙德(Marco Arment)在Twitter上寫道。“我也是,”購物清單應(yīng)用AnyList聯(lián)合創(chuàng)始人杰森·馬爾(Jason Marr)說,“在iOS 13上,蘋果的表現(xiàn)的確是對開發(fā)者和用戶的不尊重。”
這些問題表明,iPhone已經(jīng)變得有多復(fù)雜,而且用戶很容易對一家以軟硬件順暢整合而著稱的公司感到失望。對蘋果公司來說,每年跟隨最新款iPhone定時(shí)發(fā)布軟件更新,是增加系統(tǒng)新功能、防止用戶轉(zhuǎn)向主要競爭對手Android的關(guān)鍵途徑。更新后的操作系統(tǒng)還為開發(fā)者提供了更多的應(yīng)用程序開發(fā)工具,從而為蘋果的應(yīng)用商店帶來了更多收入。
蘋果發(fā)言人特魯?shù)?middot;穆勒(Trudy Muller)拒絕置評。
新的開發(fā)過程將有助于提高早期內(nèi)部iOS操作系統(tǒng)版本的可用性,或者用蘋果的話說,(不同功能)更加“易于相處”。在iOS 14開發(fā)之前,有些團(tuán)隊(duì)每天都會添加一些還沒有經(jīng)過充分測試的功能,而其他團(tuán)隊(duì)則每周都會對現(xiàn)有功能進(jìn)行修改。“每天的開發(fā)過程就像一整份食譜,但很多廚師都在添加配料,”一位了解開發(fā)過程的人士表示。
測試軟件在開發(fā)不同階段的變化是如此之多,以至于這些設(shè)備常常變得難以運(yùn)行。由于這個原因,一些“測試人員會在一團(tuán)糟的情況下將系統(tǒng)跑上幾天,所以他們根本不會真正清楚哪些功能會對系統(tǒng)產(chǎn)生何種作用。”該人士說。在這種情況下,由于蘋果工程師很難測試出操作系統(tǒng)對許多新添加功能的反應(yīng),從而導(dǎo)致iOS 13頻頻出現(xiàn)某些問題,因此也無法達(dá)到測試目標(biāo)。
蘋果公司內(nèi)部測試是所謂的“白手套”測試,用1到100的等級來衡量和排名其軟件整體質(zhì)量。有問題的軟件版本得分可能在60分左右,而更穩(wěn)定的軟件可能在80分以上。iOS 13的得分低于之前更完善的iOS 12操作系統(tǒng)。在開發(fā)過程中,蘋果團(tuán)隊(duì)還為軟件產(chǎn)品的功能特性分別設(shè)置了綠色、黃色和紅色的代碼,以顯示這種功能特性在開發(fā)過程中的質(zhì)量。相應(yīng)的優(yōu)先級從0到5,其中0是關(guān)鍵問題,5是次要問題,用于確定單個軟件錯誤的嚴(yán)重性。
新策略已經(jīng)被應(yīng)用到代號為“Azul”的iOS 14系統(tǒng)開發(fā)中,該系統(tǒng)將于明年發(fā)布。蘋果還考慮將iOS 14的一些功能推遲到2021年發(fā)布,在公司內(nèi)部這一更新被稱為“Azul +1”,也可能會以iOS 15公開發(fā)布,這也讓公司有更多時(shí)間關(guān)注操作系統(tǒng)性能。不過,熟悉蘋果計(jì)劃的人士表示,預(yù)計(jì)iOS 14在新功能的廣度上將與iOS 13不相上下。
測試策略的轉(zhuǎn)移將適用于所有蘋果的操作系統(tǒng),包括iPadOS、watchOS、macOS和tvOS。最新的Mac電腦操作系統(tǒng)macOS Catalina也出現(xiàn)了一些問題,比如與許多應(yīng)用程序不兼容,郵件中缺少信息。一些運(yùn)行基于iOS操作系統(tǒng)的HomePod音箱在最近一次iOS 13更新后無法工作,導(dǎo)致蘋果暫時(shí)停止升級。另一方面,最新的蘋果電視和蘋果手表系統(tǒng)更新則相對順利。
蘋果公司的高管們希望,從長遠(yuǎn)來看,全面改革后的測試方法將提高公司軟件質(zhì)量。但這并不是蘋果工程師第一次聽到管理層這么說。
去年,蘋果曾推遲了iOS 12的幾項(xiàng)功能發(fā)布,其中包括對CarPlay和iPad主屏幕的重新設(shè)計(jì),專注于提高可靠性和整體性能。在2018年1月的一次全體會議上,費(fèi)德里吉表示,公司對新功能的重視程度過高,應(yīng)該優(yōu)先向消費(fèi)者提供他們想要的質(zhì)量和穩(wěn)定性。
隨后,蘋果成立了所謂的“老虎團(tuán)隊(duì)”來解決iOS特定部分的性能問題。該公司從整個軟件部門調(diào)派工程師,專注于加快應(yīng)用程序啟動時(shí)間、改善網(wǎng)絡(luò)連接和延長電池壽命等任務(wù)。當(dāng)iOS 12操作系統(tǒng)于2018年秋季發(fā)布時(shí),運(yùn)行相當(dāng)穩(wěn)定,在頭兩個月內(nèi)只進(jìn)行了兩次更新。
這種成功沒有延續(xù)到今年的操作系統(tǒng)升級。iOS 13的最初版本漏洞百出,以至于蘋果不得不匆忙發(fā)布了幾個補(bǔ)丁。在iOS 13發(fā)布的頭兩個月里,已經(jīng)進(jìn)行了8次更新,是自2012年費(fèi)德里吉接管蘋果iOS軟件工程部門以來最多的一次。該公司目前正在測試另一個新版本iOS 13.3,這本是要在明年春天進(jìn)行的后續(xù)工作。
今年6月份蘋果召開了2019年度全球開發(fā)者大會。大約在此一個月前,該公司的軟件工程師就開始意識到,當(dāng)時(shí)在公司內(nèi)部被稱為Yukon的iOS 13表現(xiàn)不如之前的版本。一些參與這個項(xiàng)目的人說系統(tǒng)開發(fā)是一個“爛攤子”。
今年8月,蘋果工程師們意識到,幾周后與新iPhone一起發(fā)布的iOS 13.0根本無法達(dá)到質(zhì)量標(biāo)準(zhǔn),于是決定放棄對其進(jìn)行修補(bǔ),專注于改進(jìn)后續(xù)的第一次更新版本iOS 13.1。蘋果私下里認(rèn)為iOS 13.1是“真正的公開發(fā)布版本”,其質(zhì)量水平與iOS 12相當(dāng)。公司預(yù)計(jì)只有鐵桿蘋果粉絲才會在手機(jī)上安裝iOS 13.0操作系統(tǒng)。
9月24日蘋果發(fā)布了更新的iOS 13.1,這比既定時(shí)間提前了一周,也壓縮了iOS 13.0作為蘋果旗艦操作系統(tǒng)發(fā)布的時(shí)間。新iPhone與蘋果軟件緊密集成,因此從技術(shù)角度講,不可能推出搭載iOS 12操作系統(tǒng)的iPhone 11系列智能手機(jī)。由于新款手機(jī)發(fā)布時(shí)iOS 13.1還沒能及時(shí)準(zhǔn)備好,蘋果唯一的選擇就是發(fā)布iOS 13.0,并盡快讓所有人更新到iOS 13.1。
雖然iOS 13出現(xiàn)的問題確實(shí)讓iPhone用戶感到不安,但更新速度還是相當(dāng)快。據(jù)蘋果稱,截至10月中旬,半數(shù)蘋果設(shè)備用戶都在運(yùn)行iOS 13。這一升級速度仍遠(yuǎn)遠(yuǎn)領(lǐng)先于谷歌的Android。
iOS 13.1發(fā)布后,蘋果的軟件工程部門迅速轉(zhuǎn)向iOS 13.2,其質(zhì)量目標(biāo)是優(yōu)于iOS 12。這次更新后的抱怨比iOS 13操作系統(tǒng)的前幾次更新都要少,但卻仍有一個錯誤,系統(tǒng)會在不應(yīng)該關(guān)閉的情況下關(guān)閉后臺的應(yīng)用程序。
經(jīng)驗(yàn)豐富的Apple應(yīng)用程序開發(fā)人員Steve Troughton-Smith在Twitter上寫道:“ iOS 13看起來像是超級混亂的版本,自iOS 8以來我們從未見過這么糟糕的狀況。”