第203章 Windows版星芒瀏覽器(上)
晚上八點,辦公樓三層還亮著燈。
凌雲推門進去時,測試區里擺著二十多台顯示器,每台屏幕都亮著,顯示著不同的Windows版本:95、98、NT。機器發出低沉的嗡鳴,散熱風扇轉動的聲音在安靜的夜裡格外清晰。
戴維從一台機器後面探出頭,黑眼圈很重,手裡拿著一個筆記本。
「老闆?你不是明天才回來嗎?」
「提前了一天。」凌雲把行李放在門口,脫下外套,「進度怎麼樣?」
「跟我來。」
戴維帶著他走到測試區中央的工作檯,台上擺著三台主機,每台都連著一台顯示器和一套鍵盤滑鼠。左邊的屏幕顯示Windows 95,中間是Windows 98,右邊是Windows NT。
「我們按平台分組測試。」戴維啟動中間那台機器,「Windows 98是最重要的,市場占有率正在快速上升。」
屏幕亮起,藍天白雲的開機畫面閃過。進入桌面後,戴維雙擊一個安裝程序。進度條開始走動,從0%到100%,用時約四十秒。安裝完成後,桌面上出現了一個新圖標:藍色的星球背景,中間是白色的流星軌跡,下方寫著「星芒瀏覽器」。
雙擊圖標。
瀏覽器窗口彈出,界面和星辰系統版基本一致,但標題欄是Windows標準的灰藍色。
「界面渲染用了Windows原生控制項庫。」戴維說,「為了兼容性,我們重寫了整個UI層。內核還是咱們自己的,但外層包裝成Windows應用。」
「啟動速度如何?」
「比IE和網景都要快。」戴維打開計時器,關閉瀏覽器重新啟動,「冷啟動平均1.8秒,IE要2.3秒。熱啟動0.5秒,IE0.7秒。」
「內存占用率如何?」
戴維調出任務管理器。「打開五個標籤頁,占用內存約32MB。IE同等條件約38MB,但我們支持的功能更多。」
「具體多哪些?」
「第一,內置星語插件。」戴維點擊瀏覽器右上角的一個小氣泡圖標,側邊欄滑出,顯示星語的登錄界面,「用戶可以直接登錄,不用單獨開星語客戶端。」
「穩定嗎?」
「目前測試,連續運行二十四小時沒崩潰。」戴維關閉側邊欄,「但有個問題:Windows 95的COM組件支持不完善,側邊欄偶爾會卡頓。我們做了降級方案,95下默認關閉側邊欄,用戶需要可以手動打開。」
「兼容性測試覆蓋多少?」
「硬體平台十二種,從奔騰75到最新的奔騰II 300,顯卡從S3 Trio64到Voodoo2,網卡從10M到100M。」戴維翻開筆記本,「目前發現的問題有十七個,其中四個是嚴重級別,會影響使用。剩下的是次要問題,比如字體渲染差異、顏色偏差。」
「嚴重問題是什麼?」
「第一個,」戴維走到左邊的Windows 95機器前,「某些老顯卡的驅動不兼容,會導致瀏覽器窗口花屏。我們已經做了檢測,遇到不兼容的顯卡,會自動切換到軟體渲染模式,但性能會下降30%。」
「有什麼解決方案嗎?」
「聯繫顯卡廠商要驅動源碼,我們做適配。」戴維說,「已經聯繫了S3和Trident,他們答應提供技術文檔,但要簽保密協議。」
「簽。」
「第二個嚴重問題,」戴維又走到NT機器前,「NT系統權限管理嚴格,我們的安裝程序需要管理員權限。普通用戶安裝時可能會失敗。」
「準備怎麼辦?」
「我們重寫了安裝包,分兩個版本:管理員版和普通用戶版。普通用戶版功能受限,但能正常使用。」戴維頓了頓,「但這樣維護成本會翻倍。」
「先做。」凌雲說,「等用戶量上來,再考慮統一。」
「第三個問題,」戴維坐回工作檯,「自動更新機制。Windows下我們不能像星辰系統那樣直接替換系統文件,需要用戶授權。微軟的規範要求數字簽名,否則會被安全軟體攔截。」
「數字簽名多少錢?」
「一年兩萬美元,由Verisign頒發。」戴維在筆記本上記下,「我們需要申請一個。」
「明天就申請。」
「第四個問題,」戴維抬起頭,「也是最麻煩的:ActiveX插件支持。」
他打開IE,訪問一個使用ActiveX技術的網頁,頁面上顯示出一個視頻播放器。
「很多企業網站、政府網站、銀行網站,都用ActiveX做安全控制項。如果我們不支持,用戶訪問這些網站會出問題。」
「技術難度很大嗎?」
「很大。」戴維實話實說,「ActiveX是微軟的專有技術,文檔不完整。我們逆向工程分析了一個月,勉強實現了基礎支持,但不穩定。而且,每遇到一個新的ActiveX控制項,都要單獨適配。」
凌雲沉默了幾秒。
「優先級放低。」他說,「先保證普通網頁瀏覽穩定。ActiveX支持作為長期項目,慢慢做。」
「那用戶遇到不能用的網站怎麼辦?」
「提示他們『該網站需要IE瀏覽器』,並提供IE下載連結。」凌雲說,「誠實點,總比崩潰好。」
戴維在筆記本上記下。
這時,一個測試工程師從外面走進來,手裡拿著兩份列印的測試報告。
「戴維,昨天那批回歸測試結果出來了。」她把報告遞過來,「XP平台的問題基本解決,但ME平台又發現三個新bug。」
「ME?」凌雲皺眉,「那不是明年才發布嗎?」
「微軟給我們發了預覽版。」戴維解釋,「他們希望星芒能支持所有Windows版本,包括未來的。」
「測試範圍擴大了多少?」
「從Windows 95到Windows ME,五個大版本,八個子版本。」戴維翻著報告,「我們現在有十二個全職測試員,三班倒,每天執行一千兩百個測試用例。」
「自動化測試覆蓋率有多少?」
「核心功能85%,邊緣場景45%。」戴維說,「還在提高。」
凌雲走到窗前,看著外面。矽谷的夜晚很安靜,遠處高速公路上的車燈像流動的星河。
「元旦上線,」他轉回身,「來得及嗎?」
「如果按現在的進度,沒有重大新問題,應該可以。」戴維謹慎地說,「但我們預留了一周的緩衝時間。如果出現緊急問題,可以推遲到1月8號。」
「儘量不要推遲。」凌雲說,「元旦上線,那天很多人放假,有時間下載試用。」
「那我們需要加人。」戴維說,「至少再加五個測試工程師,兩個開發。」
「先從系統部調幾個人來幫忙,同時招聘新人。」凌雲說,「讓行政部明天發招聘啟事。」
「明白。」
凌雲推門進去時,測試區里擺著二十多台顯示器,每台屏幕都亮著,顯示著不同的Windows版本:95、98、NT。機器發出低沉的嗡鳴,散熱風扇轉動的聲音在安靜的夜裡格外清晰。
戴維從一台機器後面探出頭,黑眼圈很重,手裡拿著一個筆記本。
「老闆?你不是明天才回來嗎?」
「提前了一天。」凌雲把行李放在門口,脫下外套,「進度怎麼樣?」
「跟我來。」
戴維帶著他走到測試區中央的工作檯,台上擺著三台主機,每台都連著一台顯示器和一套鍵盤滑鼠。左邊的屏幕顯示Windows 95,中間是Windows 98,右邊是Windows NT。
「我們按平台分組測試。」戴維啟動中間那台機器,「Windows 98是最重要的,市場占有率正在快速上升。」
屏幕亮起,藍天白雲的開機畫面閃過。進入桌面後,戴維雙擊一個安裝程序。進度條開始走動,從0%到100%,用時約四十秒。安裝完成後,桌面上出現了一個新圖標:藍色的星球背景,中間是白色的流星軌跡,下方寫著「星芒瀏覽器」。
雙擊圖標。
瀏覽器窗口彈出,界面和星辰系統版基本一致,但標題欄是Windows標準的灰藍色。
「界面渲染用了Windows原生控制項庫。」戴維說,「為了兼容性,我們重寫了整個UI層。內核還是咱們自己的,但外層包裝成Windows應用。」
「啟動速度如何?」
「比IE和網景都要快。」戴維打開計時器,關閉瀏覽器重新啟動,「冷啟動平均1.8秒,IE要2.3秒。熱啟動0.5秒,IE0.7秒。」
「內存占用率如何?」
戴維調出任務管理器。「打開五個標籤頁,占用內存約32MB。IE同等條件約38MB,但我們支持的功能更多。」
「具體多哪些?」
「第一,內置星語插件。」戴維點擊瀏覽器右上角的一個小氣泡圖標,側邊欄滑出,顯示星語的登錄界面,「用戶可以直接登錄,不用單獨開星語客戶端。」
「穩定嗎?」
「目前測試,連續運行二十四小時沒崩潰。」戴維關閉側邊欄,「但有個問題:Windows 95的COM組件支持不完善,側邊欄偶爾會卡頓。我們做了降級方案,95下默認關閉側邊欄,用戶需要可以手動打開。」
「兼容性測試覆蓋多少?」
「硬體平台十二種,從奔騰75到最新的奔騰II 300,顯卡從S3 Trio64到Voodoo2,網卡從10M到100M。」戴維翻開筆記本,「目前發現的問題有十七個,其中四個是嚴重級別,會影響使用。剩下的是次要問題,比如字體渲染差異、顏色偏差。」
「嚴重問題是什麼?」
「第一個,」戴維走到左邊的Windows 95機器前,「某些老顯卡的驅動不兼容,會導致瀏覽器窗口花屏。我們已經做了檢測,遇到不兼容的顯卡,會自動切換到軟體渲染模式,但性能會下降30%。」
「有什麼解決方案嗎?」
「聯繫顯卡廠商要驅動源碼,我們做適配。」戴維說,「已經聯繫了S3和Trident,他們答應提供技術文檔,但要簽保密協議。」
「簽。」
「第二個嚴重問題,」戴維又走到NT機器前,「NT系統權限管理嚴格,我們的安裝程序需要管理員權限。普通用戶安裝時可能會失敗。」
「準備怎麼辦?」
「我們重寫了安裝包,分兩個版本:管理員版和普通用戶版。普通用戶版功能受限,但能正常使用。」戴維頓了頓,「但這樣維護成本會翻倍。」
「先做。」凌雲說,「等用戶量上來,再考慮統一。」
「第三個問題,」戴維坐回工作檯,「自動更新機制。Windows下我們不能像星辰系統那樣直接替換系統文件,需要用戶授權。微軟的規範要求數字簽名,否則會被安全軟體攔截。」
「數字簽名多少錢?」
「一年兩萬美元,由Verisign頒發。」戴維在筆記本上記下,「我們需要申請一個。」
「明天就申請。」
「第四個問題,」戴維抬起頭,「也是最麻煩的:ActiveX插件支持。」
他打開IE,訪問一個使用ActiveX技術的網頁,頁面上顯示出一個視頻播放器。
「很多企業網站、政府網站、銀行網站,都用ActiveX做安全控制項。如果我們不支持,用戶訪問這些網站會出問題。」
「技術難度很大嗎?」
「很大。」戴維實話實說,「ActiveX是微軟的專有技術,文檔不完整。我們逆向工程分析了一個月,勉強實現了基礎支持,但不穩定。而且,每遇到一個新的ActiveX控制項,都要單獨適配。」
凌雲沉默了幾秒。
「優先級放低。」他說,「先保證普通網頁瀏覽穩定。ActiveX支持作為長期項目,慢慢做。」
「那用戶遇到不能用的網站怎麼辦?」
「提示他們『該網站需要IE瀏覽器』,並提供IE下載連結。」凌雲說,「誠實點,總比崩潰好。」
戴維在筆記本上記下。
這時,一個測試工程師從外面走進來,手裡拿著兩份列印的測試報告。
「戴維,昨天那批回歸測試結果出來了。」她把報告遞過來,「XP平台的問題基本解決,但ME平台又發現三個新bug。」
「ME?」凌雲皺眉,「那不是明年才發布嗎?」
「微軟給我們發了預覽版。」戴維解釋,「他們希望星芒能支持所有Windows版本,包括未來的。」
「測試範圍擴大了多少?」
「從Windows 95到Windows ME,五個大版本,八個子版本。」戴維翻著報告,「我們現在有十二個全職測試員,三班倒,每天執行一千兩百個測試用例。」
「自動化測試覆蓋率有多少?」
「核心功能85%,邊緣場景45%。」戴維說,「還在提高。」
凌雲走到窗前,看著外面。矽谷的夜晚很安靜,遠處高速公路上的車燈像流動的星河。
「元旦上線,」他轉回身,「來得及嗎?」
「如果按現在的進度,沒有重大新問題,應該可以。」戴維謹慎地說,「但我們預留了一周的緩衝時間。如果出現緊急問題,可以推遲到1月8號。」
「儘量不要推遲。」凌雲說,「元旦上線,那天很多人放假,有時間下載試用。」
「那我們需要加人。」戴維說,「至少再加五個測試工程師,兩個開發。」
「先從系統部調幾個人來幫忙,同時招聘新人。」凌雲說,「讓行政部明天發招聘啟事。」
「明白。」