Often, during the Internationalization process, all the text strings in an application or web site are extracted into separate files (sometimes called "resource files") for translation into a target language.
One technique useful in Internationalization and Localization testing, is to pseudo-translate your text into strings that can be understood by testers, but still will indicate if any strings remain untranslated. Often a Perl script, or other automated technique, can do the pseudo-translation for you. After translation, rebuild the application-under-test and look at it.
Any remaining unstranslated strings then probably represent strings that were incorrectly hard-coded and were not extracted into resources files.
There are a number of techniques for doing this. For example:
- UPPERCASEIAN – this method translates each string to uppercase
- Bracketed – this brackets each string with [ and ]
- Egg Language – this places the string “egg” in front of each vowel
- All Xes – this replaces each character in the string with X
- Leading and Trailing Zs – this puts the string “zzz” in front and at the end of the phrase
How the phrase “All Things Quality” might be “translated” into various pseudo-locales for Internationalization testing purposes:
UPPERCASEIAN | ALL THINGS QUALITY |
Bracketed | [All Things Quality] |
Egg Language | eggAll Theggings Qeggueggaleggity |
All Xes | XXX XXXXXX XXXXXXX |
Leading and Trailing Zs | zzzAll Things Qualityzzz |
How Babelfish (http://babelfish.altavista.com/) translates the phrase “All Things Quality” into various languages
Chinese (Simplified) | 所有事质量 |
Chinese (Traditional) | 所有事質量 |
Dutch | Al Kwaliteit van Dingen |
French | Toute la Qualité De Choses |
German | Alle Sache-Qualität |
Greek | Όλη η ποιότητα πραγμάτων |
Italian | Tutta la Qualità Di Cose |
Japanese | すべての事の質 |
Korean | 모든 것 질 |
Portuguese | Toda a Qualidade Das Coisas |
Russian | Все Качество Вещей |
Spanish | Toda la Calidad De las Cosas |
And for fun, how the Dialectizer (http://rinkworks.com/dialect/) translates the phrase "All Things Quality" into various "dialects":
Redneck | All Thin's Quality |
Jive | All Doodads Quality |
Cockney | All Finks Quality |
Elmer Fudd | Aww Dings Qwawity |
Swedish Chef | Ell Theengs Qooeleety |
All Diggs Kality | |
Pig Latin | Allyay Ingsthay Ualityqay |
Hacker | all tihngz quiality |
[03/23/07] An update:
It turns out that the folks at Fog Creek Software first psuedo-translated their strings into Pig Latin as they prepared to translate Fog Bugz into German.
http://www.joelonsoftware.com/items/2007/03/13b.html