偽翻譯
偽在地化(Pseudolocalization)是軟體測試中用來測試軟體是否符合國際化與在地化的方法之一。
概要
若一個軟體在設計時並未將在地化能力(localizability)納入考慮,那麼在實際針對這軟體進行在地化翻譯時,將有可能會面臨許多問題。例如文字在翻譯後可能比來源語言的文字還要更長,那麼將導致翻譯後的文字被截斷而難於辨識。例如軟體的選單、文字區域、按鍵、核取方塊等,設計者在做介面設計時通常先調整出適切於來源語言文字長度的大小(通常為英文),並進一步調整介面的對齊、位置、行距等等。然而,一些語言從來源語言被翻譯後,往往會比來源語言的長度更長,例如德文或是挪威文通常都比英文要來的長,於是原始的介面大小便會顯得過小而無法正常顯示翻譯後的文字。
問題還可能更加嚴重,一些語言的文字或符號可能因為軟體原始指定的字形並未支援,而導致無法正常顯示。問題也會出現在輸入端,某些程式設計師錯誤的假設使用者在輸入時不會輸入一些特殊字元或是特定語言的文字,而導致使用者在實際操作軟體時發生問題。
針對一些已然成熟且多數的目標語言翻譯已經可以取得的軟體而言,或是僅會有少量介面變更的軟體,直接將翻譯套用至該軟體並進行多個語言的測試,可能是最直接且最好的測試方式。而針對一些新開發的軟體,或是將會有龐大的介面變更的軟體,等待翻譯完畢之後再進行介面測試,則可能因此延遲了整個測試的時程。並且,在軟體開發的初期也不見得會開始進行介面文字的翻譯,因為介面有很大的機率會被調整甚至重新設計。若要等到產品比較成熟後,開始進行介面翻譯,然後才進行翻譯的介面測試,產品的上市時程將可能因此被延誤。在這樣的狀況之下,偽在地化將會是最佳的選擇,原因之一包含翻譯並不會真正的被執行。
一般而言,程式裡預計要被翻譯的文字都將會被偽翻譯(pseudo-translation)。假定英文為軟體的來源語言文字,一般而言偽翻譯的文字必須要比來源語言的文字長度還要長,文字並且要包含較長且不含空白的單字,並且最好包含了不同語系的文字。如此一來,測試者便可藉由審查每個介面的元件來驗證有無文字被截斷的狀況發生。
方法
為了使測試者更加容易的操作且辨識經過偽翻譯後的軟體與介面,偽翻譯可以藉由以下的方式來進行;
假定原始的來源語言的其中一個介面文字是:
- Close Current File
偽翻譯後的結果:
- Çlôôsèè Çúrrrèñtt Fîllèè
以這個例子而言,不僅歐語的延伸字元也可同時被檢視能否正常呈現,介面文字也就由某公式適度的加長,並且最重要的是文字近似於原始的英文,測試者將會較為容易操作軟體。
而要針對文字是否有被截斷,還可以在偽翻譯後的文字前後加上特定符號,例如:
- αÇlôôsèè Çúrrrèñtt Fîllèèß
如此一來,測試人員可以藉由首尾的α與ß來判定偽翻譯後的文字是否有被截斷。
近年來,隨著機器翻譯技術的進步,藉由機器翻譯也可達到與偽在地化相當的效果。