國際化軟件測試 軟件測試
國際化軟件測試包括軟件國際化測試和軟件本地化能力測試。軟件的國際化測試是重要的測試階段,必須在本地化測試之前進行測試。國際化軟件的測試目的是判斷軟件的國際化設計程度,確定軟件是否支持可能的區域,是否可以容易的本地化。
國際化軟件的全球通用性包含三方面的內容:軟件國際化特征功能測試、本地化能力測試和本地化測試。
一、國際化軟件測試的重要性
軟件項目團隊的所有成員都應該認識并且高度重視國際化測試的重要性。
首先,任何不良的國際化設計的軟件錯誤,將存在于所有本地化的語言版本,都需要修改源語言程序的代碼才能修復該類錯誤,這將增加軟件的本地化成本。
其次,良好國際化設計的軟件將需要最小程度的本地化測試。因為良好的區域語言支持已經集成在軟件的國際化設計中,需要翻譯的資源已經從程序代碼中分離出來,可以很容易的翻譯資源文件中需要本地化的內容,而且不會破壞程序的功能。
二、國際化軟件測試的原則
為了提高國際化測試的質量,需要遵循下面的原則:
一旦程序的代碼足夠穩定,盡早進行測試。
按照組件和功能特征的優先級從高到低的順序進行測試
重點放在處理多語言字符串的直接或間接的輸入/輸出(I/O)
國際化功能測試與本地化能力測試并行進行。
使用偽本地化和偽鏡像技術進行本地化能力測試。
三、軟件國際化能力測試
當開發全球可用的國際化軟件時,軟件的結構設計者必須考慮諸多因素, 如語言、字符處理、數據格式、用戶界面等方面的問題,軟件的功能特性測試要與國際化能力測試結合在一起,確保所有的功能測試都符合全球可用性。下面分別簡 要討論語言、字符處理、數據格式和用戶界面問題包含的內容。
語言問題描述軟件在世界各種語言在顯示、字母、語法和語法規則方面存在的差異,包括支持雙向文字功能、大小寫、代碼頁、字體等幾個方面,詳細內容如下。
● 雙向文字處理。
● 雙字節文字處理。
● Unicode編碼字符。
● 字母大小寫轉換。
● 代碼頁。
● 字體格式和大小。
● 輸入法編輯器(IME)。
● 文字的換行與斷字。
● 不同布局的鍵盤。
字符處理描述字符串資源中的文本在應用程序的用戶界面顯示中存在的問題。在開發全球可用的國際化軟件時,必須考慮語言之間的差異,特別是那些與字符串相關的差異。應驗證需要本地化的字符串,確保應用程序允許字符串增長,并確保應用程序不依賴字符串連接,詳細內容如下。
● 字符串連接。
● 詞序問題。
● 字符串增長。
● 字符串排序和比較。
● 資源文件的字符串。
數據格式設置問題從用戶的角度看,是源語言或區域設置編寫的應用程序在處理國際化數據時存在的問題。數據格式包括地址、貨幣、日期、數字、紙張大小、時間和度量單位,詳細內容如下。
● 地址。
● 貨幣。
● 日期。
● 時間。
● 數字。
● 紙張大小。
● 電話號碼。
● 度量單位。
用戶界面問題包括有關設計全球可用的用戶界面(UI)元素的信息。用戶界面的測試包括菜單和對話框、圖標和位圖、熱鍵和快捷鍵和UI 控件,詳細內容如下。
● 菜單和對話框。
● 圖標和位圖。
● 熱鍵和快捷鍵。
● UI 控件。
四、軟件本地化能力測試
本地化能力測試驗證是否可以輕松地將程序的用戶界面翻譯成任何目標語言,而不需要重新設計或修改代碼。本地化能力測試尋找產品本地化過程中發現的錯誤,本地化能力測試本質上就是國際化測試和本地化測試的混合。本地化能力測試的成功完成表示產品已可用于本地化?梢允褂脗伪镜鼗员苊庹嬲镜鼗璧臅r間和費用。偽本地化或許是查找本地化缺陷的最佳方法,它的執行步驟如下:
首先,需要運行程序的偽本地化版本,執行偽本地化的最佳方法是自動修改程序的資源。例如,下面是講英語的本地化人員在翻譯程序的 UI 時所做的工作:
用包含非英文字符的文本替換英文文本。最好使文本保持為可讀。例如,使翻譯算法用形狀相似的非英語符號替換英語字符。例如:
對于 a ,使用 à 或 ?
對于 c ,使用 ? 或 ?
對于 n ,使用 ń 或 ? 。
向資源字符串添加額外的字符。在許多情況下,翻譯的文本比原英語長(“ some string ”變成了“ +++some string+++ ”)。
調整對話框的大小和位置。當字符串的長度由于本地化而增加時,本地化人員常常這樣做。
標記每個資源字符串的開始和結尾。這些標記可以幫助您確定應用程序在運行時的什么時候顯示文本。
使用多語言 Unicode 進行替換(因為資源字符串總是存儲為 Unicode )。這有助于查找程序使用 ANSI 函數處理或顯示文本的位置。
偽本地化程序后,測試它的功能。偽本地化應用程序的運行與原始版本應該沒有區別。
在本地化能力測試中經常忘記的一個方面是鏡像測試。如果希望將軟件銷售到程序的文本和 UI 從右到左 (RTL) 顯示的市場,需要知道應用程序鏡像后的樣子。此測試可以作為產品偽本地化的一部分來執行。以您選擇的語言顯示文本結果,而應用程序鏡像窗口和文本對齊。
其次,本地化能力測試應該執行代碼檢查,確保代碼滿足下列要求:
以標準 Windows 資源格式編寫所有資源,并且不對源代碼中的字符串進行硬編碼。
不將指針算法用于字符串長度計算、對字符串元素的訪問和字符串操作。
不在運行時通過抽出或連接來生成字符串。
資源不假定字符串緩沖區長度。
不在運行時定位 UI 控件。
圖標和位圖不包含文本。
不存在對驅動器和文件夾名稱或注冊表項的任何假定。
最后,本地化能力測試需要執行 UI 和文檔檢查,確保 UI 和支持文檔中使用的術語清楚、一致、沒有歧義。當 UI 和文檔用不同的名稱引用同一功能或者當文本包含過多的技術術語時,本地化人員可能會感到困惑。
五、軟件本地化測試
本地化的主要工作就是翻譯產品的用戶界面( UI ),有時也更改某些初始設置以使產品適合于另一個地區。本地化測試檢查針對特定目標區域的產品本地化質量。此測試基于國際化測試的結果,后者驗證對特定區域性或區域設置的功能性支持。本地化測試只能在產品的本地化版本上進行。
本地化測試過程中的測試工作集中在:
受本地化影響的方面,如 UI 和內容
特定的區域設置、特定的語言和地區方面的內容
另外,本地化測試還應包括:
基本功能測試
在本地化環境中運行的安裝和升級測試
根據產品的目標地區計劃應用程序和硬件兼容性測試。
用戶界面和語言的本地化測試應包括的項有:
驗證所有應用程序資源
驗證語言的準確性和資源屬性
版式錯誤
書面文檔、聯機幫助、消息、界面資源、命令鍵順序等的一致性檢查。
確認是否遵守系統、輸入和顯示環境標準
用戶界面可用性
評估文化適合性
檢查政治上敏感的內容
當交付本地化產品時,確保包含本地化文檔(手冊、聯機幫助、上下文幫助等)。要檢查的項包括:
翻譯的語言質量
翻譯的完整性
所有文檔和應用程序 UI 中使用的術語一致
文章來源于領測軟件測試網 http://www.kjueaiud.com/