本發(fā)明涉及計算機技術(shù)領(lǐng)域,尤其涉及一種用戶界面的自動檢測方法和裝置。
背景技術(shù):
目前在IT行業(yè),在開發(fā)滿足用戶自定義需求的用戶界面(UI,User Interface)之前,一般先開發(fā)一個公版的用戶界面,再在該公版用戶界面上進行滿足用戶自定義需求的修改(如:增加或者刪除公版用戶界面上的某個條目,或者修改公版用戶界面中的某個條目中的字符串等)。由于這些修改均在同一個公版用戶界面代碼中進行,因此很容易出現(xiàn)對界面的代碼塊控制不全,導(dǎo)致某次修改連同公版用戶界面代碼一同修改,從而某一用戶所進行的修改出現(xiàn)在另一用戶的用戶界面上的現(xiàn)象。公版用戶界面代碼被修改很容易造成軟件錯誤崩潰等。因此,為了避免這種由于公版用戶界面代碼被修改所帶來的軟件錯誤崩潰的現(xiàn)象,現(xiàn)如今采用人工檢測的方法對公版用戶界面進行檢測,該檢測過程效率低下,且容易出現(xiàn)漏檢、錯檢的現(xiàn)象。
技術(shù)實現(xiàn)要素:
本發(fā)明提出一種用戶界面的自動檢測方法和裝置,能夠?qū)崿F(xiàn)對用戶界面進行自動化檢測,從而提高對用戶界面進行檢測的過程的效率和正確率。
本發(fā)明提供的一種用戶界面的自動檢測方法,具體包括:
根據(jù)用戶界面信息,渲染并顯示所述用戶界面信息所對應(yīng)的用戶界面;
獲得所述用戶界面的界面截圖;
計算所述界面截圖與標準圖片之間的相似度,并將所述相似度與預(yù)設(shè)的相似度閾值進行比較,若所述相似度大于所述相似度閾值,則確認所述用戶界面正確,否則,生成界面錯誤信息。
進一步地,在所述根據(jù)用戶界面信息,渲染并顯示所述用戶界面信息所對應(yīng)的用戶界面之前,還包括:
從配置文件中讀取并獲得用戶界面信息;或者,
發(fā)送界面信息獲取請求至顯示控制裝置,并接收所述顯示控制裝置返回的用戶界面信息。
進一步地,所述用戶界面信息中包括自定義配置信息;
則所述根據(jù)用戶界面信息,渲染并顯示所述用戶界面信息所對應(yīng)的用戶界面,具體包括:
根據(jù)所述用戶界面信息,從待檢測軟件中獲得與所述用戶界面信息相對應(yīng)的用戶界面;
根據(jù)所述用戶界面信息中的所述自定義配置信息,將所述用戶界面中的與所述自定義配置信息相對應(yīng)的自定義配置刪除;
將刪除所述自定義配置后的所述用戶界面渲染至顯示屏中顯示。
進一步地,所述計算所述界面截圖與標準圖片之間的相似度,并將所述相似度與預(yù)設(shè)的相似度閾值進行比較,若所述相似度大于所述相似度閾值,則確認所述用戶界面正確,否則,生成界面錯誤信息,具體包括:
計算所述界面截圖中的各個像素點與所述標準圖片中的對應(yīng)的像素點的色差差值,并統(tǒng)計所述色差差值大于預(yù)設(shè)的色差閾值的像素點的個數(shù);
根據(jù)統(tǒng)計得到的個數(shù)與所述界面截圖中的像素點總數(shù)的比例,獲得相似度;
將所述相似度與所述相似度閾值進行比較,若所述相似度大于所述相似度閾值,則確定所述用戶界面正確,否則,生成所述界面錯誤信息。
進一步地,所述用戶界面信息包括界面識別碼和界面路徑信息。
相應(yīng)地,本發(fā)明還提供了一種用戶界面的自動檢測裝置,具體包括:
用戶界面顯示模塊,用于根據(jù)用戶界面信息,渲染并顯示所述用戶界面信息所對應(yīng)的用戶界面;
界面截圖獲得模塊,用于獲得所述用戶界面的界面截圖;以及,
比較檢測模塊,用于計算所述界面截圖與標準圖片之間的相似度,并將所述相似度與預(yù)設(shè)的相似度閾值進行比較,若所述相似度大于所述相似度閾值,則確認所述用戶界面正確,否則,生成界面錯誤信息。
進一步地,所述用戶界面的自動檢測裝置,還包括:
界面信息讀取模塊,用于從配置文件中讀取并獲得用戶界面信息;或者,
界面信息接收模塊,用于發(fā)送界面信息獲取請求至顯示控制裝置,并接收所述顯示控制裝置返回的用戶界面信息。
進一步地,所述用戶界面信息中包括自定義配置信息;
所述用戶界面顯示模塊,具體包括:
用戶界面獲得單元,用于根據(jù)所述用戶界面信息,從待檢測軟件中獲得與所述用戶界面信息相對應(yīng)的用戶界面;
自定義配置刪除單元,用于根據(jù)所述用戶界面信息中的所述自定義配置信息,將所述用戶界面中的與所述自定義配置信息相對應(yīng)的自定義配置刪除;以及,
界面渲染顯示單元,用于將刪除所述自定義配置后的所述用戶界面渲染至顯示屏中顯示。
進一步地,所述比較檢測模塊,具體包括:
差異像素點統(tǒng)計單元,用于計算所述界面截圖中的各個像素點與所述標準圖片中的對應(yīng)的像素點的色差差值,并統(tǒng)計所述色差差值大于預(yù)設(shè)的色差閾值的像素點的個數(shù);
相似度獲得單元,用于根據(jù)統(tǒng)計得到的個數(shù)與所述界面截圖中的像素點總數(shù)的比例,獲得相似度;以及,
相似度判斷單元,用于將所述相似度與所述相似度閾值進行比較,若所述相似度大于所述相似度閾值,則確定所述用戶界面正確,否則,生成所述界面錯誤信息。
進一步地,所述用戶界面信息包括界面識別碼和界面路徑信息。
實施本發(fā)明,具有如下有益效果:
本發(fā)明提供的用戶界面的自動檢測方法及裝置,由于通過設(shè)備根據(jù)用戶界面信息自動地控制用戶界面的切換和顯示,并自動截取該用戶界面的界面截圖,將該界面截圖與標準圖片進行比較,因此能夠?qū)崿F(xiàn)對用戶界面進行自動化檢測,從而提高對用戶界面進行檢測的過程的效率和正確率,同時降低人工成本。
附圖說明
圖1是本發(fā)明提供的用戶界面的自動檢測方法的一個實施例的流程示意圖;
圖2是本發(fā)明提供的用戶界面的自動檢測方法中一個實施例中的一個界面截圖和相對應(yīng)的標準圖片的示意圖;
圖3是本發(fā)明提供的用戶界面的自動檢測裝置的一個實施例的結(jié)構(gòu)示意圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
參見圖1,是本發(fā)明提供的用戶界面的自動檢測方法的一個實施例的流程示意圖,包括步驟S11至S13,具體如下:
S11:根據(jù)用戶界面信息,渲染并顯示所述用戶界面信息所對應(yīng)的用戶界面;
S12:獲得所述用戶界面的界面截圖;
S13:計算所述界面截圖與標準圖片之間的相似度,并將所述相似度與預(yù)設(shè)的相似度閾值進行比較,若所述相似度大于所述相似度閾值,則確認所述用戶界面正確,否則,生成界面錯誤信息。
需要說明的是,在本發(fā)明實施例中,設(shè)備在安裝好軟件之后,控制切換并顯示軟件中的不同用戶界面,并獲得相應(yīng)的用戶界面截圖,隨后,將獲得的該用戶界面截圖與相應(yīng)的標準圖片進行比較,若用戶界面截圖與標準圖片的相似度高,則確認該用戶界面正確,否則,確認該用戶界面錯誤,并生成相應(yīng)的界面錯誤信息。
在一個優(yōu)選地實施方式中,設(shè)備在安裝好待檢測軟件之后,獲取用戶界面信息,并根據(jù)該用戶界面信息,從該待檢測軟件中獲得與該用戶界面信息相對應(yīng)的用戶界面,并將該用戶界面渲染和顯示至設(shè)備的顯示屏中。隨后,設(shè)備啟動截圖功能,獲得該用戶界面的界面截圖。最后,設(shè)備計算該界面截圖與相對應(yīng)的標準圖片之間的相似度,并將該相似度與預(yù)設(shè)的相似度閾值進行比較,若該相似度大于該相似度閾值,則確認所檢測的用戶界面正確,否則,這確認所檢測的用戶界面錯誤,并生成相應(yīng)的界面錯誤信息,并將該界面錯誤信息發(fā)送至相應(yīng)的負責人員,以使負責人員在接收到該界面錯誤信息之后根據(jù)該界面錯誤信息對所檢測的用戶界面進行修復(fù)。其中,標準圖片預(yù)先設(shè)置并存儲于設(shè)備中,且每個標準圖片分別與待檢測軟件中的一個用戶界面相對應(yīng)。設(shè)備在將界面截圖與標準圖片進行比較之前,根據(jù)用戶界面信息讀取與待檢測的用戶界面相對應(yīng)的標準圖片。
特別地,設(shè)備中包括測試主板和上位機,上述方法可以由測試主板和上位機共同完成。當采用U盤方式進行軟件燒錄時,測試主板若檢測到有U盤連接至本機,則自動燒錄該U盤中的程序,從而將待檢測軟件燒錄至本機中。待燒錄完成后,測試主板從U盤或者上位機中獲取用戶界面信息,從而根據(jù)該用戶界面信息渲染并顯示待檢測軟件中的相應(yīng)的用戶界面。隨后,測試主板通知上位機已完成用戶界面顯示,并將相應(yīng)的用戶界面信息發(fā)送至上位機,從而使上位機通過抓取測試主板中的LVDS信號的方式截取獲得界面截圖,并根據(jù)接收獲得的用戶界面信息查找到相應(yīng)的標準圖片。最后,上位機計算該標準圖片和截取獲得的界面截圖之間的相似度,并將該相似度與預(yù)設(shè)的相似度閾值進行比較,若該相似度大于該相似度閾值,則確認所檢測的用戶界面正確,不作處理,否則,確認所檢測的用戶界面錯誤,生成相應(yīng)的界面錯誤信息,并將該界面錯誤信息發(fā)送給相應(yīng)的負責人員,以使該負責人員根據(jù)該界面錯誤信息對所檢測的用戶界面進行修改??梢岳斫獾氖牵瑴y試主板還可以采用其他方式進行軟件燒錄,如通過網(wǎng)絡(luò)傳輸、串口通信等方式獲得待檢測軟件的程序,從而將待檢測軟件燒錄至本機中。
由于通過設(shè)備根據(jù)用戶界面信息自動地控制用戶界面的切換和顯示,并自動截取該用戶界面的界面截圖,將該界面截圖與標準圖片進行比較,因此能夠?qū)崿F(xiàn)對用戶界面進行自動化檢測,從而提高對用戶界面進行檢測的過程的效率和正確率,同時降低人工成本。
進一步地,在所述根據(jù)用戶界面信息,渲染并顯示所述用戶界面信息所對應(yīng)的用戶界面之前,還包括:
從配置文件中讀取并獲得用戶界面信息;或者,
發(fā)送界面信息獲取請求至顯示控制裝置,并接收所述顯示控制裝置返回的用戶界面信息。
需要說明的是,設(shè)備在根據(jù)用戶界面信息渲染并顯示相應(yīng)的用戶界面之前,需要從配置文件中或者從顯示控制裝置中獲得用戶界面信息。用戶界面信息可以通過設(shè)備讀取配置文件中的信息獲得,也可以通過設(shè)備發(fā)送界面信息獲取請求至顯示控制裝置,并接收顯示控制裝置返回的信息獲得。
特別地,本發(fā)明實施例還可以由測試主板和上位機共同完成。當采用U盤方式將待檢測軟件燒錄至測試主板時,配置文件預(yù)先存儲于U盤中,因此測試主板可以通過讀取U盤中的配置文件獲得用戶界面信息,也可以通過發(fā)送界面信息獲取請求至上位機,并接收上位機通過IIC或者串口等通信方式返回的信息獲得??梢岳斫獾氖?,測試主板還可以通過網(wǎng)絡(luò)傳輸、串口通信等方式獲得配置文件。
在另一個優(yōu)選地實施方式中,所述用戶界面信息中包括自定義配置信息;
則所述根據(jù)用戶界面信息,渲染并顯示所述用戶界面信息所對應(yīng)的用戶界面,具體包括:
根據(jù)所述用戶界面信息,從待檢測軟件中獲得與所述用戶界面信息相對應(yīng)的用戶界面;
根據(jù)所述用戶界面信息中的所述自定義配置信息,將所述用戶界面中的與所述自定義配置信息相對應(yīng)的自定義配置刪除;
將刪除所述自定義配置后的所述用戶界面渲染至顯示屏中顯示。
需要說明的是,當用戶界面中還包括用戶自定義生成的自定義配置時,在將該用戶界面渲染至顯示屏中顯示之前,還需要將該用戶界面中的自定義配置刪除。當用戶界面中還包括自定義配置時,用戶界面信息中包括該自定義配置所對應(yīng)的自定義配置信息。設(shè)備在根據(jù)用戶界面信息從待檢測軟件中獲得與該用戶界面信息相對應(yīng)的用戶界面之后,根據(jù)該用戶界面信息中的自定義配置信息將該用戶界面中的自定義配置刪除,并將該刪除自定義配置后的用戶界面渲染至顯示屏中顯示。
例如,某一用戶界面中包括一個由某一用戶自定義添加的條目,則用戶界面信息中包括該條目的條目信息(如:該條目的ID等)。設(shè)備在從待測試軟件中獲得該用戶界面之后,根據(jù)該用戶界面信息中的條目信息將該條目從用戶界面中刪除,并將刪除了該條目的用戶界面渲染至顯示屏中顯示。
由于通過將用戶界面中的自定義配置刪除,從而保證進行檢測時的用戶界面中的配置為原始配置,從而可以通過與標準圖片進行比較的方式檢測該用戶界面正確與否,因此能夠進一步保證檢測結(jié)果的正確性。
進一步地,所述計算所述界面截圖與標準圖片之間的相似度,并將所述相似度與預(yù)設(shè)的相似度閾值進行比較,若所述相似度大于所述相似度閾值,則確認所述用戶界面正確,否則,生成界面錯誤信息,具體包括:
計算所述界面截圖中的各個像素點與所述標準圖片中的對應(yīng)的像素點的色差差值,并統(tǒng)計所述色差差值大于預(yù)設(shè)的色差閾值的像素點的個數(shù);
根據(jù)統(tǒng)計得到的個數(shù)與所述界面截圖中的像素點總數(shù)的比例,獲得相似度;
將所述相似度與所述相似度閾值進行比較,若所述相似度大于所述相似度閾值,則確定所述用戶界面正確,否則,生成所述界面錯誤信息。
需要說明的是,設(shè)備在比較界面截圖和標準圖片之間的相似程度時,首先,分別比較界面截圖的長和寬與標準圖片的長和寬是否相等,若界面截圖的長與標準圖片的長不相等或者界面截圖的寬與標準圖片的寬不相等,則確認所檢測的用戶界面錯誤,并生成相應(yīng)的界面錯誤信息,否則,統(tǒng)計界面截圖與標準圖片之間的色差較大的像素點的總數(shù),即,計算界面截圖中的各個像素點與標準圖片中的對應(yīng)的像素點的色差差值,并將該色差差值與預(yù)設(shè)的色差閾值進行比較,若某一像素點所對應(yīng)的色差差值大于該色差閾值,則界面截圖與標準圖片之間的色差較大的像素點的總數(shù)加1。隨后,根據(jù)統(tǒng)計獲得的界面截圖與標準圖片之間的色差較大的像素點的總數(shù),計算該總數(shù)與界面截圖中的像素點的總數(shù)的比例,從而獲得相似度。最后,將計算獲得的相似度與預(yù)設(shè)的相似度閾值進行比較,若該相似度大于該相似度閾值,則確認所檢測的用戶界面正確,不作處理,否則,確認所檢測的用戶界面錯誤,并生成相應(yīng)的界面錯誤信息。
如圖2所示,為一個界面截圖和相對應(yīng)的標準圖片的示意圖。可以理解的是,所示的界面截圖與所示的標準圖片之間的色差相差較大的像素點較多,因此該界面截圖與該標準圖片之間的相似程度小,設(shè)備在比較獲得該界面截圖和該標準圖片之間的相似程度之后,確認該界面截圖所對應(yīng)的用戶界面錯誤,并生成相應(yīng)的界面錯誤信息,并將該界面錯誤信息發(fā)送至相應(yīng)的負責人員以使該負責人員對該用戶界面進行處理。
由于通過計算界面截圖與標準圖片之間的對應(yīng)的像素點之間的色差差值,從而獲得界面截圖與標準圖片之間的相似程度,因此該相似程度獲得的過程簡單,能夠進一步提高對用戶界面進行檢測的過程的效率。
進一步地,所述用戶界面信息包括界面識別碼和界面路徑信息。
需要說明的是,用戶界面信息中包括界面識別碼和界面路徑信息等。因此,設(shè)備能夠根據(jù)該用戶界面信息中的界面路徑信息從待檢測軟件中獲得相應(yīng)的用戶界面,并將該用戶界面渲染并顯示至顯示屏中。相應(yīng)地,設(shè)備能夠根據(jù)該用戶界面信息中的界面識別碼獲得與該用戶界面相對應(yīng)的標準圖片。
本發(fā)明實施例提供的用戶界面的自動檢測方法,由于通過設(shè)備根據(jù)用戶界面信息自動地控制用戶界面的切換和顯示,并自動截取該用戶界面的界面截圖,將該界面截圖與標準圖片進行比較,因此能夠?qū)崿F(xiàn)對用戶界面進行自動化檢測,從而提高對用戶界面進行檢測的過程的效率和正確率,同時降低人工成本。由于通過將用戶界面中的自定義配置刪除,從而保證進行檢測時的用戶界面中的配置為原始配置,從而可以通過與標準圖片進行比較的方式檢測該用戶界面正確與否,因此能夠進一步保證檢測結(jié)果的正確性。另外,由于通過計算界面截圖與標準圖片之間的對應(yīng)的像素點之間的色差差值,從而獲得界面截圖與標準圖片之間的相似程度,因此該相似程度獲得的過程簡單,能夠進一步提高對用戶界面進行檢測的過程的效率。
相應(yīng)地,本發(fā)明還提供一種用戶界面的自動檢測裝置,能夠?qū)崿F(xiàn)上述實施例中的用戶界面的自動檢測方法的所有流程。
參見圖3,是本發(fā)明提供的用戶界面的自動檢測裝置的一個實施例的結(jié)構(gòu)示意圖,具體如下:
用戶界面顯示模塊31,用于根據(jù)用戶界面信息,渲染并顯示所述用戶界面信息所對應(yīng)的用戶界面;
界面截圖獲得模塊32,用于獲得所述用戶界面的界面截圖;以及,
比較檢測模塊33,用于計算所述界面截圖與標準圖片之間的相似度,并將所述相似度與預(yù)設(shè)的相似度閾值進行比較,若所述相似度大于所述相似度閾值,則確認所述用戶界面正確,否則,生成界面錯誤信息。
進一步地,所述用戶界面的自動檢測裝置,還包括:
界面信息讀取模塊,用于從配置文件中讀取并獲得用戶界面信息;或者,
界面信息接收模塊,用于發(fā)送界面信息獲取請求至顯示控制裝置,并接收所述顯示控制裝置返回的用戶界面信息。
在另一個優(yōu)選地實施方式中,所述用戶界面信息中包括自定義配置信息;
所述用戶界面顯示模塊31,具體包括:
用戶界面獲得單元,用于根據(jù)所述用戶界面信息,從待檢測軟件中獲得與所述用戶界面信息相對應(yīng)的用戶界面;
自定義配置刪除單元,用于根據(jù)所述用戶界面信息中的所述自定義配置信息,將所述用戶界面中的與所述自定義配置信息相對應(yīng)的自定義配置刪除;以及,
界面渲染顯示單元,用于將刪除所述自定義配置后的所述用戶界面渲染至顯示屏中顯示。
進一步地,所述比較檢測模塊33,具體包括:
差異像素點統(tǒng)計單元,用于計算所述界面截圖中的各個像素點與所述標準圖片中的對應(yīng)的像素點的色差差值,并統(tǒng)計所述色差差值大于預(yù)設(shè)的色差閾值的像素點的個數(shù);
相似度獲得單元,用于根據(jù)統(tǒng)計得到的個數(shù)與所述界面截圖中的像素點總數(shù)的比例,獲得相似度;以及,
相似度判斷單元,用于將所述相似度與所述相似度閾值進行比較,若所述相似度大于所述相似度閾值,則確定所述用戶界面正確,否則,生成所述界面錯誤信息。
進一步地,所述用戶界面信息包括界面識別碼和界面路徑信息。
本發(fā)明實施例提供的用戶界面的自動檢測裝置,由于通過設(shè)備根據(jù)用戶界面信息自動地控制用戶界面的切換和顯示,并自動截取該用戶界面的界面截圖,將該界面截圖與標準圖片進行比較,因此能夠?qū)崿F(xiàn)對用戶界面進行自動化檢測,從而提高對用戶界面進行檢測的過程的效率和正確率,同時降低人工成本。由于通過將用戶界面中的自定義配置刪除,從而保證進行檢測時的用戶界面中的配置為原始配置,從而可以通過與標準圖片進行比較的方式檢測該用戶界面正確與否,因此能夠進一步保證檢測結(jié)果的正確性。另外,由于通過計算界面截圖與標準圖片之間的對應(yīng)的像素點之間的色差差值,從而獲得界面截圖與標準圖片之間的相似程度,因此該相似程度獲得的過程簡單,能夠進一步提高對用戶界面進行檢測的過程的效率。
以上所述是本發(fā)明的優(yōu)選實施方式,應(yīng)當指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以作出若干改進和潤飾,這些改進和潤飾也視為本發(fā)明的保護范圍。