軟體本地化測試是項系統性任務,講究團隊協作精神。軟體測試工程師負責測試、發現、報告軟體錯誤。軟體錯誤修復工程師的工作是及時正確修復處理這些軟體錯誤。為了便於軟體錯誤修復工程師能夠迅速重現報告的錯誤,尋找錯誤產生的原因,然後及時修復錯誤,需要測試工程師正確完整地報告發現的錯誤。另外,不同型別的軟體錯誤,又分別由來自不同公司的軟體錯誤修復工程師進行修復。例如,軟體功能錯誤和軟體國際化錯誤只能由源語言軟體**商的軟體錯誤修復工程師進行修復,而本地化錯誤由本地化服務商的軟體錯誤修復工程師進行修復。
下面對本地化軟體的錯誤的三種典型型別進行分類討論,**錯誤的表現特徵,產生的原因,測試要求,發現錯誤的方法。
1 、功能錯誤
表現特徵
· 不能實現設計要求的功能。
· 產生與設計要求不符合的結果。
· 絕大多數存在於源語言軟體和本地化軟體,也有僅出現在本地化軟體中。
· 經常出現在軟體的選單項、工具欄按鈕和對話方塊的功能按鈕中。
產生原因
· 源語言軟體編碼錯誤。
· 錯誤本地化,如將程式中的變數字串名進行了翻譯等。
測試要求
· 保證輸入資料正確,或者開啟了正確的測試用例。
· 明確正確的輸出結果和中間資料數值及格式。
測試方法
· 對於選單項或工具欄按鈕,通過全面測試各個選項,認真觀察每一步是否正確執行,輸出結果(包括格式和數值)是否正確。
· 對於對話方塊,可以逐個執行各按鈕,各個列表選項等觀察執行結果。
· 對於命令列形式的多個並列選項,採用路徑跟蹤法,按分支順序測試巢狀的全部子項。
說明 · 特別注意不同選項、不同按鈕相互操作的影響。
· 注意檢查快捷鍵是否遺漏,是否多餘,是否不同,是否起作用。
2 、國際化錯誤
表現特徵
· 控制項或對話方塊中顯示不可辯識或無意義的明顯錯誤的字元。
· 不支援雙位元組字元的輸入和輸出,包括雙位元組的檔名和路徑名。
· 與當地不符合的預設列印紙張大小。
· 與當地不符合的日期和時間格式。
· 本地化軟體的列表項排序錯誤。
· 某些沒有本地化的字串。
· 僅出現在本地化後的版本中。
產生原因
· 源程式在設計時沒有正確進行國際化設計,例如,沒有提供雙位元組字符集的支援。
· 源程式在設計時沒有將可以本地化的字串與軟體**進行徹底分離。
· 軟體本地化後,單位元組字元向雙位元組字元轉化過程中,由於單位元組和雙位元組之間的差別,可能使得某些本地化後的雙位元組字元的顯示亂碼。
測試要求
· 本地化後的軟體字元顯示正確完整,無亂碼或明顯錯別字。
· 與本地區域有關的資料型別(日期 / 時間,貨幣符號,紙張大小,字型,度量單位等)的顯示符合本地的格式要求。
測試方法
· 執行選單或按鈕,檢查對話方塊中的字元。
· 開啟幫助文件,檢查所有需要翻譯的字元。
說明 · 注意檢查對話方塊下拉列表中需要拖動滾動條才能顯示的內容。
· 需要確認源語言軟體對應項正確,僅本地化軟體存在錯誤。
3 、本地化錯誤
包括翻譯錯誤和控制項大小和位置引起的布局錯誤。
表現特徵
· 應該翻譯而沒有翻譯的英文本元。
· 不應該翻譯而翻譯的中文字詞。
· 錯誤翻譯的字詞。
· 較多隱含在對話方塊各控制項以及幫助文件中。
· 只在本地化版本中存在該型別錯誤。
· 控制項相互重疊或排列不均勻。
· 控制項中字元顯示不完整。
· 主要出現在本地化版本的對話方塊中。
產生原因
· 翻譯人員不熟悉翻譯要求。
· 翻譯人員工作疏漏。
· 使用者介面的翻譯與標準術語表不一致。
· 軟體本地化後,由於源語言和本地化語言的表達方式不同,本地化後的字元數與源語言不同,每個字元所佔空間尺寸不同,使得在英文版本正確顯示的控制項字元,可能在本地化版本顯示不正確。
· 在編譯本地化軟體之前,沒有對資源檔案對話方塊及其控制項調整大小。
· 本地化人員調整軟體資源檔案不當引起。例如,對話方塊及其控制項高度或寬度的不正確調整。
測試要求
· 明確需要翻譯和不需要翻譯的內容。
· 明確正確的翻譯方式。
· 根據術語表,確認術語翻譯的正確性與一致性。
· 對話方塊中控制項布局均勻,字元顯示完整正確。
· 對話方塊中控制項數量相等,沒有多餘或丟失的控制項
測試方法
· 主要同時開啟中英文版本,執行相同的操作。
· 結合標準介面翻譯術語表,參照對比。
· 執行將要開啟對話方塊的選單或工具欄按鈕,觀察開啟對話方塊中的控制項布局。
· 對比檢查源語言軟體和本地化軟體對應的對話方塊中控制項的數量
說明 · 對於對話方塊,如果含有下拉列表框,要開啟列表框檢視全部項。
· 特別要注意選項中開關類翻譯錯誤。
· 可能在執行不同的操作後,如選擇了不同單選或複選按鈕後,編輯框顯示重疊等。
· 執行後帶省略號的選單或命令按鈕,將會顯示對話方塊。
· 一些對話方塊控制項的布局錯誤如果也存在於源語言軟體中,則屬於軟體設計錯誤,應該分配給軟體**商處理。
以上對本地化軟體測試經常遇到的三種錯誤型別進行了分析,實際測試是乙個動態的過程,不能孤立靜態地對待發現的錯誤,錯誤的型別並不是絕對的,需要具體問題。例如,本地化軟體中如果發現應該翻譯而沒有翻譯的錯誤,既可能是由於本地化翻譯過程中忘記翻譯引起的本地化錯誤,也可能是源語言軟體設計程式設計中的硬編碼引起的國際化錯誤。再者,某些軟體功能錯誤既可能是由於本地化翻譯過程中採用了錯誤的翻譯格式 ( 例如,某些不應該翻譯的程式變數字元被翻譯了 ) 引起的錯誤,也可能是源語言軟體程式設計錯誤。最後,乙個錯誤可能包含著其他的不同型別的錯誤。比如在對話方塊中,選擇某個按鈕,產生乙個錯誤提示對話方塊,這可能是乙個按鈕功能錯誤,如果對話方塊中存在需要翻譯而沒有翻譯的英文,則又是乙個本地化翻譯錯誤,如果對話方塊中存在無法辨識的字元,則又是乙個國際化錯誤,如果對話方塊中按鈕排列重疊,則還是乙個本地化布局錯誤。
總之,本地化軟體的錯誤的產生是多方面的,不能僅僅歸結為軟體本地化過程帶來的錯誤。實際上,良好的國際化設計的源程式是減少軟體本地化錯誤的根本保證。當然,提高軟體本地化過程能力,提高翻譯和檢查,優化本地化軟體編譯流程,能夠減少很多因本地化產生的錯誤。軟體測試工程師需要認真思考軟體錯誤表現的實質,深入分析錯誤**,將其劃分為正確的錯誤型別,分配給適當的修復工程師(源語言軟體**商或本地化服務商)處理。
本文**
本地化測試錯誤特徵分析與測試方法
軟體本地化測試是項系統性任務,講究團隊協作精神。軟體測試工程師負責測試 發現 報告軟體錯誤。軟體錯誤修復工程師的工作是及時正確修復處理這些軟體錯誤。為了便於軟體錯誤修復工程師能夠迅速重現報告的錯誤,尋找錯誤產生的原因,然後及時修復錯誤,需要測試工程師正確完整地報告發現的錯誤。另外,不同型別的軟體錯誤...
本地化測試錯誤特徵分析與測試方法
軟體本地化測試是項系統性任務,講究團隊協作精神。軟體測試工程師負責測試 發現 報告軟體錯誤。軟體錯誤修復工程師的工作是及時正確修復處理這些軟體錯誤。為了便於軟體錯誤修復工程師能夠迅速重現報告的錯誤,尋找錯誤產生的原因,然後及時修復錯誤,需要測試工程師正確完整地報告發現的錯誤。另外,不同型別的軟體錯誤...
本地化測試錯誤特徵分析與測試方法
軟體本地化測試是項系統性任務,講究團隊協作精神。軟體測試工程師負責測試 發現 報告軟體錯誤。軟體錯誤修復工程師的工作是及時正確修復處理這些軟體錯誤。為了便於軟體錯誤修復工程師能夠迅速重現報告的錯誤,尋找錯誤產生的原因,然後及時修復錯誤,需要測試工程師正確完整地報告發現的錯誤。另外,不同型別的軟體錯誤...