來看看優酷是如何測試 App 響應式布局的

2020-11-09 CSDN

作者 | 阿里巴巴文娛技術 劉麗琴

頭圖 | CSDN 下載自東方IC

響應式布局是在屏幕尺寸發生變化時,APP的頁面、組件按照規則進行動態自適應,實現一套代碼兼容多尺寸終端設備。響應式技術應用在多端上減少了開發人力投入,但是對於測試來說需要測試的範圍相對擴大,要保障多端、多尺寸的APP質量,下面介紹優酷在響應式測試過程中沉澱的測試能力及方法。

測試面臨的挑戰

移動端主要測試類型包括功能測試、性能測試、穩定性測試、兼容性適配測試等,針對響應式測試主要難點在兼容性測試,原因是兼容性測試範圍擴大,測試效率面臨較大挑戰。具體表現在以下幾方面:

1)端類型增加,之前關注Phone端即可,現在要關注Phone、Pad、摺疊屏、車機大屏

2)組件樣式繁多,Phone端組件樣式顯示一種狀態,現在不同屏幕設備、不同狀態下組件呈現樣式布局會有相應不同

3)系統交互多,包括分屏、浮窗、平行視界、系統轉屏設置與響應式交互

4)測試對象多,需要考慮所有的頁面、組件、彈窗功能遍歷

5)多業務場景交互,比如全屏播放

技術實現分析

針對以上挑戰,測試團隊對優酷全端響應式適配進行深入分析,總結出相應的測試點。主要從以下幾方面進行分析:

響應式業務流程

如上圖顯示,響應式測試分為UI測試和數據處理邏輯測試兩部分:

1、UI顯示由響應式SDK完成

響應式SDK提供了在不同尺寸設備上通用的響應式能力,在屏幕尺寸發生變化時,頁面樣式、布局的UI顯示也會發生相應的變化,這塊主要關注兼容性適配測試。

2、數據處理邏輯由上層業務完成

數據處理主要進行了數據合併、數據過濾、數據映射及數據補全的邏輯處理,重點關注響應式和非響應式下數據處理邏輯的正確性。這塊就需要構造各種不同數據進行邏輯覆蓋驗證。

除此之外,針對業界廠商目前支持的屏幕尺寸變化能力,需要考慮到不同能力下的交互測試:

1、系統支持旋轉屏幕設置;

2、Android Pad支持分屏,部分華為Pad支持平行視界能力;

3、iPad支持浮窗、分屏能力。

測什麼?

由以上的分析結果不難得出測試範圍以及主要的測試點,另外一個重要部分,是需要對響應式開關進行測試,已確定及時止損的能力。

測試範圍

1)分層:SDK測試、業務層測試;

2)分端:Phone、Pad、摺疊屏、車機大屏;

3)分平臺:Android、iOS;

4)分能力:響應式開/關;

5)分機型:iPad分屏、浮窗能力,見下表:




設備

浮窗

分屏

iPad mini 2

iPad mini 3

iPad mini 4

iPad Air

iPad Air 2

iPad Pro

主要測試點

怎麼測?

通過對響應式的測試分析,知道了測哪些,下面從功能測試、兼容性測試等方面來闡述怎麼測。

1、功能測試

功能測試主要驗證數據處理邏輯在大屏端的正確性。數據處理邏輯主要對組件進行了數據合併、數據映射、數據過濾及補全,針對數據的構造主要通過mock的能力實現,確認大屏端邏輯處理正確。

同時,數據處理邏輯不能影響Phone端的組件頁面,這部分測試主要進行回歸測試,並且回歸量相對較大,為了提高測試效率優酷打造了組件自動化測試方案。

2、組件自動化測試

該測試藉助圖像識別,能夠很好的規避技術改造的影響,穩定性較好。從以上5個方面解決問題,通過設計測試場景,將線上引流數據清洗後自動構造所需組件數據,自動應用mock數據,基於魔鏡算法服務進行相似度+配置化的UI對比。

本次組件測試,覆蓋首頁/頻道頁35個組件,正常、異常mock文件500+,dailybuild高頻測試,在響應式項目中很好的保證了組件測試的力度和覆蓋度。

3、兼容性測試

響應式測試難點在於兼容性測試,這部分要在多端、多系統、多尺寸上驗證UI顯示,測試工作量較大;針對兼容性測試優酷推出了優化後的兼容性測試方案,包括機型選擇和測試平臺:

機型選擇

測試平臺

為了解決兼容性測試成本問題,針對兼容性測試做了以下改進:

1)通用腳本降低腳本編寫成本、提高執行穩定性、快速開展業務測試

通用腳本基於scheme跳轉能力,解決了業務入口觸達穩定性問題;提供自動滾屏和基於元素查找的點擊功能,還包含通用彈窗處理以及登錄功能。

2)長截圖能力解決了不同解析度以及不同物理尺寸下圖片驗證的難點

長截圖實現方式有兩種,一種滾屏過程中截長圖;一種滾屏截圖,最後拼接成長截圖能力。

3)圖像驗證解決人工檢測問題

通過圖像識別算法,智能篩選出可疑圖片,大大減少了人工檢測圖片數量。

4、其他測試

1)穩定性測試

大屏端穩定性測試是很有必要的,特別是iPad端低端設備居多並且內存較Phone端也相對低,所以需要考慮這些設備上的穩定性問題。

2)性能測試

響應式方案會顯示更多的圖片和數據,其數據解析和圖片渲染過程會對APP啟動和流暢度,內存產生明顯影響。

3)數據測試

第一,響應式旋轉屏幕時,組件行數列數會發生變化,此時要保證不同數據處理下,埋點數據下發正常:

第二,響應式映射處理的組件埋點數據下發與映射前的組件埋點一致。

總結

針對響應式測試在功能測試、兼容性測試方面做了大量的研究,沉澱了組件測試方案和兼容性測試方案,即保障了響應式高質量上線,又提高了測試效率。

後續的響應式測試如何高效支持持續迭代對測試來說是一個新的挑戰,主要在兩方面:

一是,如何保證開發新的組件支持響應式

建立響應式編碼規範,對代碼進行靜態掃描,對不符合的規範進行告警

二是,如何高效保障sdk的增量修改的質量

響應式sdk開源後,將脫離APP獨立存在,針對sdk單獨的測試方案需要考慮開展單元測試和覆蓋率分析進行保障sdk質量。

點分享

相關焦點

  • 來看看優酷是如何測試 App 響應式布局的!
    響應式技術應用在多端上減少了開發人力投入,但是對於測試來說需要測試的範圍相對擴大,要保障多端、多尺寸的APP質量,下面介紹優酷在響應式測試過程中沉澱的測試能力及方法。響應式SDK提供了在不同尺寸設備上通用的響應式能力,在屏幕尺寸發生變化時,頁面樣式、布局的UI顯示也會發生相應的變化,這塊主要關注兼容性適配測試。
  • 響應式布局技術:App如何適配不同尺寸的設備
    基於以上背景,我們啟動了優酷APP響應式,適配不同屏幕尺寸下的顯示效果。在Android和iOS上,如何進行響應式狀態的管理?如何解決分屏下頁面寬高的獲取?如何解決多尺寸多終端下的頁面布局以及組件容器的布局?
  • 響應式布局技術:App如何適配不同尺寸的設備
    基於以上背景,我們啟動了優酷APP響應式,適配不同屏幕尺寸下的顯示效果。 在Android和iOS上,如何進行響應式狀態的管理?如何解決分屏下頁面寬高的獲取?如何解決多尺寸多終端下的頁面布局以及組件容器的布局?
  • 優酷APP響應式布局在消費場景的落地之Android篇
    本文介紹一下優酷播放場景在響應式適配的一些困難及實現方案。 業務介紹 播放頁作為用戶視頻消費場景的落地頁,主要提供包括視頻播放、內容介紹、互動、推薦等。頁面類別及頁面元素都比較複雜,頁面類別有:劇集、電影、綜藝、少兒、體育、新知等;其元素主要有:組件、半屏、tab等。
  • 響應式布局自適應布局 - CSDN
    多屏適應響應式布局方案,響應式、自適應布局區別布局區別理論上來說,響應式布局在任何情況下都比自適應布局好一些,但自適應布局有它自己的優勢,因為它們實施起來代價更低,測試更容易,在資源有限的情況下這往往讓他們成為更切實際的解決方案。自適應布局可以讓你的設計更加可控,因為你只需要考慮了了幾種狀態就萬事大吉了。
  • 響應式布局和自適應布局 - CSDN
    響應式布局和自適應布局詳解響應式布局等於流動網格布局,而自適應布局等於使用固定分割點來進行布局。自適應布局給了你更多設計的空間,因為你只用考慮幾種不同的狀態。而在響應式布局中你卻得考慮上百種不同的狀態。雖然絕大部分狀態差異較小,但仍然也算做差異。
  • 響應式布局和自適應布局詳解
    響應式布局和自適應布局詳解響應式布局等於流動網格布局,而自適應布局等於使用固定分割點來進行布局。自適應布局給了你更多設計的空間,因為你只用考慮幾種不同的狀態。而在響應式布局中你卻得考慮上百種不同的狀態。雖然絕大部分狀態差異較小,但仍然也算做差異。
  • 響應式網頁布局的實現方法原理
    既然響應式網頁設計牽涉到了這麼多的方方面面,那我們又該如何去實現這種頁面呢?對此我也特意收集了一些響應式網頁的實現方法原理 首先我們應該遵循移動優先原則,交互和設計應以移動端為主,PC則作為移動端的一個擴展;一個頁面需要兼容不同終端,那麼有兩個關鍵點是我們需要去做到響應式的:響應式布局和響應式內容(圖片、多媒體)。
  • vueweb端響應式布局 - CSDN
    響應式布局和自適應布局詳解響應式布局等於流動網格布局,而自適應布局等於使用固定分割點來進行布局。自適應布局給了你更多設計的空間,因為你只用考慮幾種不同的狀態。而在響應式布局中你卻得考慮上百種不同的狀態。雖然絕大部分狀態差異較小,但仍然也算做差異。
  • 關於響應式布局,你了解多少?
    引言由於移動端的崛起,為了自動適應不同的行動裝置的各種瀏覽器解析度和現實效果,出現了響應式網站的布局。響應式布局可以為不同的終端用戶提供更加舒適的界面和更好的用戶體驗。響應式布局是什麼一、響應式布局是什麼?
  • bootstrap響應式布局
    我們已經在我們的流動布局實例中應用了響應性能,並請您在不同的屏幕尺寸下進行瀏覽。您可以通過 Chrome 或 FireFox 的窗口大小調整的擴展來調整瀏覽器。。   響應式 Web 設計工作原理   為了應用響應式 Web 設計,您需要創建一個包含適應各種設備尺寸樣式的 CSS。
  • 響應式布局與自適應式布局有什麼不同
    一:什麼是響應式布局和自適應式布局1.什麼是響應式布局響應式布局就是實現不同屏幕解析度的終端上瀏覽網頁的不同展示方式。通過響應式設計能使網站在手機和平板電腦上有更好的瀏覽閱讀體驗。換句話說就是一個網站能夠兼容多個終端,而不是為了每一個終端做一個特定的版本。
  • pc端響應式布局 - CSDN
    1.什麼是響應式 Web 設計?響應式 Web 設計讓你的網頁能在所有設備上有好顯示。響應式 Web 設計只使用 HTML 和 CSS。響應式 Web 設計不是一個程序或Javascript腳本。3.自適應設計或者響應式設計的方法(1)使用@media,條件(min-width: 768px)判斷當瀏覽器的寬度小於768px值時,改變樣式。
  • 如何設計製作HTML5響應式網站建設
    H5響應式網站目前已經佔領了全網營銷的流量入口,對於說起H5響應式網站很多人也是慢慢的熟悉起來了,隨著H5響應式網站建站技術的日益成熟,也為企業的建站成本帶來了很大的減少,在技術沒有成型之前都是需要做上倆套模板的,一套pc端的一套手機端的,在瀏覽器訪問的時候通過辨別瀏覽器的方式來跳轉不同的程序
  • 10款超酷響應式布局的jQuery插件
    如果你關注最近幾年的web設計,那麼響應式布局(responsive layout)設計對於你來說肯定不是一個陌生的詞彙。最初這個名稱來自於Ethan Marcotte的文章「Responsive Web Design」,設計的理念在於為了有效的利用空間和布局來滿足用戶閱讀過程中產生的不同使用行為,並且及時的做出響應。現在的響應式設計中,我們網站也針對不同的設備的顯示尺寸來有效的改變頁面布局和樣式。
  • 響應式布局 bootstrap案例
    前端響應式開發介紹響應式布局指的是同一頁面在不同屏幕尺寸下有不同的布局。
  • 技術專欄-rem響應式布局
    而如果移動端和PC端公用一套代碼,建議使用流式布局。3、根據當前屏幕的寬度和設計稿的寬度來計算我們HTML的font-size的值 例如:設計稿寬度為640px,其中有一個部分是輪播圖,它的尺寸是600*300,在樣式中給HTML設定一個font-size的值為100px,則輪播圖大小應該為 6rem×3rem,那如果手機屏幕寬度為375px,其font-size應該設置為多少。
  • 關於響應式布局,你必須要知道的
    前言響應式Web設計可以讓一個網站同時適配多種設備和多個屏幕,可以讓網站的布局和功能隨用戶的使用環境(屏幕大小、輸入方式、設備/瀏覽器能力)而變化
  • jquery實現響應式布局專題及常見問題 - CSDN
    使用 jQuery Mobile 和 CSS3 實現響應式設計創建可以適應每個用戶的屏幕解析度的 Web 頁面布局然而,本文將通過一些預見和規劃,向您展示如何結合使用 jQuery Mobile 框架和級聯樣式表版本 3 (CSS3) 的媒體查詢,來創建一個響應式設計,並確定布局如何對用戶的設備作出反應。目的是創建一個單一的網站,可以針對用戶設備的屏幕解析度顯示適當的布局,從而動態地響應用戶的設備。響應式設計是根據用戶設備的屏幕解析度來響應用戶設備的一種設計。
  • 如何做好一個響應式網站設計?
    響應式網站是每家企業最重要的營銷資產之一。無論您是要銷售產品還是服務,還是僅顯示公司信息,您都需要一個外觀精美的響應式網站設計來提高品牌的在線知名度。您可以使用它吸引潛在客戶,將他們轉化為潛在客戶,並最終迫使他們購買產品。