國際化和本地化測試

如今許多公司都擁有面向全球受衆的軟件產品(網站或APP)。其中最棘手的部分就是提供吸引目標市場地區用戶的使用體驗。在爲這個目標進行產品設計時,會遇到國際化和本地化。顯然國際化測試和本地化測試之間存在差異,因爲測試人員看問題的角度是會因爲不同地區發生變化的。

國際化和本地化的目標是相同的,很多做法聽起來很相似,但實際上,它們之間有很多區別。應該有效地使用測試自動化來確保產品開發得到萬無一失的質量保障。

作爲Selenium自動化測試的一部分,國際化測試和本地化測試執行策略也有很大不同。在本文中,我們還將關注國際化和本地化,從中學習相關基礎知識,進一步幫助規劃和制定與目標市場相一致的自動瀏覽器測試策略。

本地化測試

在進行本地化測試之前,需要我們深入瞭解一下當地化。顧名思義,本地化使內容和UI能夠適應特定區域或特定區域的文化和語言需求。

本地化測試是從本地化的角度驗證內容和界面的活動,它也稱爲l10n測試。

本地化測試中包含的一些組成部分是:

  • 翻譯文本
  • 鍵盤使用
  • 地址的格式和順序
  • 與文化一致的圖形和其他視覺元素
  • 處理該地區的時間和貨幣格式
  • 數據對齊

通過以可擴展的方式使用Selenium測試自動化可以加快本地化測試,並且可以將相同的實現(除了本地化功能除外)的部分功能使用Selenium自動化測試來完成測試任務。

本地化本質上側重於目標市場用戶所看到的內容,而測試負責驗證本地化的內容和界面。Selenium本地化測試,當在虛擬瀏覽器上執行時,Selenium本地化測試有助於以更快的速度獲得更多的測試覆蓋率。

國際化測試

與專注於特定地區用戶的本地化不同,國際化側重於吸引全球受衆的產品特性和功能。

國際化是一項通常從概念階段開始進行的活動,以使產品具有全球吸引力。開發功能、內容和界面以支持給定文化、語言環境或地區的本地化。從產品設計和開發的初始階段就應該考慮到本地化的各個方面。它確保產品已準備好供全球用戶使用。

國際化稱爲i18n,以下是一些國際化的最佳實踐:

  • 支持多種語言
  • 支持不同的地區、語言環境等
  • 將資源(字符串、UI 元素等)與實現分離
  • 支持不同的數字格式
  • 不同格式的文本(即左→右,右→左)

本地化與國際化測試

隨着國際化和本地化更加明晰邊界,我們更容易看清楚針對兩者的測試活動異同。以下是本地化與國際化測試差異:

  • 國際化測試是使用盡可能多的國際輸入來驗證 Web 產品的特性和功能的過程。現有的實現應該能夠處理國際化,而不會破壞功能。產品設計和開發是國際化的重點領域,因此可以適應不同的地區和地區。本地化測試可確保功能(尤其是UI和內容)與特定區域和語言環境的需求保持一致。
  • 產品特性和功能在國際化中被賦予了更高的權重,因爲它是在設計層面完成的。產品功能的設計使軟件可以輕鬆擴展以適應不同語言的使用。國際化測試包括功能、可用性、互操作性和其他測試方法,以構建具有全球吸引力的產品。
  • 國際化測試側重於測試爲全球用戶構建的產品功能和能力。本地化測試側重於測試產品,以便特定地區的用戶可以使用它。
  • 在國際化測試中,語言準確性的優先級較低,因爲重點是檢測產品設計中可能影響其全球化的問題。另一方面,語言準確性在本地化測試中被優先考慮,因爲在全球化測試過程中,產品功能已經得到充分的測試。

制定國際化和本地化測試策略

國際化測試可以在產品的前端和後端進行。產品功能本地化的具體細節可以在國際化階段本身進行規劃。國際化測試活動必須針對特定市場的語言、文化、地區、重要事件和日期。

以下是在國際化和本地化測試期間應考慮的一些要點:

  • 測試應該在前端進行。因此,重點應該放在圖像、對話框、工具欄、菜單等用戶界面上。
  • 本地化和國際化應針對特定語言的屬性進行,例如數字系統、書寫方向、地址顯示、拼寫變體等。
  • 應通過考慮顏色、圖像、距離和重量等因素對產品進行區域設置進行測試。此外還應考慮措施、郵政編碼、電話號碼以及因地區而異的因素等因素。
  • 應考慮日期和重要事件,例如日曆類型、數字格式以及數據和時間格式。

國際化測試最佳實踐

以下是實現大規模國際化測試的一些最佳實踐:

內容本地化

頁面上的文本內容(包括圖形)應進行本地化,以滿足地區或語言環境的需要。動態內容也應該採用本地化形式,例如,當用戶沒有正確填寫站點上的特定表單時出現的彈出窗口。處理動態內容是Selenium中最大的挑戰之一,可以通過使用適當的等待命令來解決。與開發人員和測試人員一起,語言專家應參與驗證本地化內容是否符合當地語法準則的整個過程。

用戶界面

如前所述,界面還需要根據目標語言環境的要求進行更改。字符串的大小會因不同語言而不同;因此,界面應該能夠適應更大的字符串而不影響可用性。應測試用戶界面的基本元素,例如對話框、文本框、下拉列表、警報、工具欄等,以確保顯示特定於區域設置的內容沒有任何問題。

渲染

必須進行國際化和本地化測試以檢查支持的腳本是否正確顯示。腳本應根據與腳本相關的語言特定的字符顯示。同樣的原則也適用於對網站上的內容(和控件)進行排序。可以使用Selenium自動化測試來檢查控件和內容是否在正確的排序位置上。

文件傳輸

包含文件傳輸操作的情況很多。用於文件傳輸操作的界面也需要根據所選語言進行本地化,包括不限於實時顯示傳輸進度的控件。

在涉及多種語言和腳本的情況下,編碼問題很常見。默認編碼格式爲UTF-8。當使用默認格式讀取其他編碼格式(例如,UTF-16、UTF-32 等)的內容時,可能會導致無法正確讀取的問題。W3C的建議是以UTF-8格式提供所有頁面,因爲這將有助於處理因使用多種語言和腳本而出現的編碼問題。

自動化測試

測試國際化或本地化的Web應用程序可能會帶來嚴峻的挑戰,而且這些挑戰會隨着每一種新語言增加而成倍增加。數據驅動的測試可以對國際化和本地化測試產生積極影響。例如,自動化測試人員可以在在線瀏覽器和平臺上執行測試,以徹底測試國際化風格。

自動化瀏覽器測試腳本應該進行可擴展性的設計,以便可以擴展同一組自動化腳本以使用不同的語言。當使用定位器(例如xpath、id、name、css 等)定位WebElement以進行自動化測試時,選擇與語言無關的最適合的WebElement變得至關重要。這爲自動化腳本提供了更好的靈活性,並有助於腳本的可擴展性,以便在國際化測試中使用。

Have Fun ~ Tester !

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章