測試HoloLens應用的做法和測試Windows應用很類似。所有常規的內容都應該被考慮在內(功能、互操作性、性能、安全性、可靠性等等),然而有些特性是HoloLens特有的,在PC或者手機上無法測試的。全息應用需要能夠在一系列多樣的環境中順暢地運行,同時也需要時刻保持性能穩定和較好的用戶舒適度。本文主要討論這方面的內容。
性能 Performance
性能表現對於全息應用來講至關重要,這直接影響到用戶體驗,我們會用大幅篇幅來討論這個主題。更多內容請閱讀: performance recommendations.
3D環境中測試3D內容 Testing 3D in 3D
-
盡可能在不同的環境中測試你的app。嘗試在大房間、小房間、廚房、客廳、卧室、辦公室等等環境中測試。同時也應嘗試在非標准特征的房間中測試,這些房間可能會有非垂直的牆壁、弧形的牆壁、傾斜的天花板等等。當我們通過走廊、樓梯在不同房間、樓層切換時,你的應用一切還能正常運行嗎?
- 在不同光線條件下測試。你的應用能在不同的環境條件下正常運行嗎?即使這些環境中存在不同的光線條件、黑色平面、透明或反光表面,例如鏡子、玻璃牆等等。
- 在不同的運動條件下測試。戴上設備並在不同的運動狀態下測試你的應用場景。你的應用能正確地響應不同的運動或穩定狀態嗎?
- 在不同的角度下測試。如果你有一個固定在世界中的全息圖像,用戶走到它背后會發生什么?如果有動心來到用戶和此全息圖像之間,這時會發生什么?如果用戶從上面或者下面看向此全息圖像,這時又會發生什么?
- 使用空間和聲音提示。確保你的應用使用了它們來避免用戶丟失視野。
- 在不同等級的環境噪音下測試。如果你集成了語音命令特性,請試着在不同噪音環境下調用此功能。
- 在坐下和站立情形下測試。確保在坐下或者站立的位置測試你的應用。
- 從不同的距離測試。在遠處你的UI元素能被看到並能夠進行交互嗎?在離全息圖像非常近的地方它們還能繼續正常工作嗎?
- 測試應用欄的交互情況。所有的應用磁貼和2D應用都會有一個頂部應用欄,上面的按鈕允許你來控制它們在世界中的定位。確保你的應用能夠正確響應應用欄的操作,嘗試在應用激活或未激活的狀態下測試調整模式。
環境測試項目 Environmental Test Matrix
舒適性 Comfort
- 裁剪面(Clip Planes)。我們要關注全息圖像被渲染的位置在哪里。關於裁剪面的更多信息,請看:https://developer.microsoft.com/en-us/windows/holographic/Hologram_stability.html#hologram_render_distances
- 避免頭部移動時可見內容的不連續移動。我們要避免相機不能正確響應用戶的真實移動。如果的應用需要用戶在場景中移動,那么確保運動可以預測、較小加速並能讓用戶控制自己的移動。
- 遵循全息圖像質量指南。實現了全息圖像質量指南的高性能應用很少會導致用戶不舒適。
- 水平分布全息圖像而不是在垂直方向上。迫使用戶花額外的時間上下觀察可能會導致頸部疲勞。
輸入方式 Input
凝視和手勢 Gaze and Gestures
Gaze 是HoloLens最基本的輸入方式,用於在環境中選中目標全息對象。用戶應當可以通過指針的位置確定gaze當前注視的目標對象。Gaze指針很類似與鼠標指針。
手勢 則允許你與全息圖像交互,就像鼠標點擊樣。絕大多數時間鼠標點擊和Touch(觸屏點擊)是一樣的,但是明白和確定它們之間區別也是很重要的。
確定你的應用能夠響應鼠標或觸摸的不同行為,這會讓用戶體驗更自然些。例如基於Gaze懸停而觸發行為。
自定義語音命令 Custom Voice Commands
語音輸入是很自然的交互形式,取決於你選擇的語音命令和形式,用戶可能會感到很棒或者會感到困惑。一條基本原則是,避免使用系統內置的語音命令,例如“Select”或“Hey Cortana”。下面是一些要考慮的地方:
- 避免使用聽起來相似的語音命令。這會潛在地導致調用錯誤
- 盡量使用表達豐富的關鍵詞。這可以提高識別率,避免錯誤調用。
外設 Peripherals
用戶可以通過外設與你的APP交互,我們對此不需要去做特定的處理。然而還是有些事情需要我們檢測:
- 確定自定義交互可用。例如你的APP可以有些自定義快捷鍵組合
- 確定多種輸入形式切換可用。例如在一個場景中用戶可能會使用多種輸入方式結束一個任務,比如聲音、手勢、鼠標和鍵盤等等。
系統集成 System Integration
電池 Battery
除去電源線后來測試你的應用,以了解應用耗電情況。可以通過LED等情況來判斷當前電池狀態,對應情況如下:
電源狀態切換 Power State Transitions
確定應用在不同電源狀態切換時,關鍵場景能否如預期一樣正常工作。例如,應用是否停留在它原來的位置上?它是否正確的保持着它的狀態?它是否還能如預期一樣工作?
- 待機/恢復。通過按壓一次電源鍵3分鍾后即可讓HoloLens自動進入待機狀態,再次點擊電源按鈕即可從待機狀態恢復。連接電源線或從電源線斷開也可以讓設備從待機狀態恢復。
- 關閉/重啟 。長按電源鍵即可關閉HoloLens,再次按下電源鍵即可重啟設備。
多應用場景 Multi-App Scenarios
確定在不同APP間切換時,核心應用功能是否能正常工作,尤其當你設定了后台運行任務時。粘貼/復制操作和Cortana集成也應當檢測是否可用。
應用遙測 Telemetry
使用遙測和分析工具對你會很有用。集成應用分析工具可以從測試用戶和終端用戶那里收集應用數據。這些數據通常可以在你將
應用提交到應用商店前幫助優化應用。有很多可選的分析工具,如果你不確定如何開始,可以閱讀: https://www.visualstudio.com/en-us/products/application-insights-vs.aspx
需要考慮的問題:
- 用戶如何使用這片空間?
- 該應用如何在世界中放置對象?你能檢測到問題嗎?
- 用戶在應用不同階段划花了多少時間?
- 用戶在該應用上花了多長時間?
- 用戶正在嘗試着最常見的用途是什么?
- 用戶有觸發異常狀態或錯誤嗎?
模擬器和模擬輸入 Emulator and Simulated Input
HoloLens模擬器是測試你的全息應用最有效的方式,可以模擬各種用戶特征和空間環境。下面是一些使用模擬器測試應用的建議:
- 使用模擬器的虛擬房間來擴展你的測試內容。模擬器內置了各種大小的虛擬房間,你可以使用這些環境來測試應用。
- 使用模擬器從各種角度觀察你的app。使用上下翻頁按鍵來模擬用戶的高矮。
- 使用真實設備來測試你的應用。HoloLens模擬器是很好的工具,但是在提交到應用商店之前你還是應該使用真是設備來測試應用。這對於確保真實設備上的性能和體驗非常重要。
帶着環境感知模擬的自動測試 Automated testing with Perception Simulation
一些開發者可能想要自動測試應用。除了單元測試外,你可以使用HoloLens的環境感知模擬模塊來自動進行人類和環境輸入模擬。環境感知模擬API可以發送模擬的輸入數據到HoloLens模擬器或HoloLens真機。
應用認證工具包 Windows App Certification Kit
為了幫助你盡可能順利地發布應用到應用商店,在提交商店認證之前,可以在本地鑒定和測試應用。如果你的應用以 Windows.Holographic為目標平台,Windows App Certification Kit 將僅在你的PC上運行本地靜態分析測試,而不會在HoloLens上運行測試。