Last week we drew a line between internationalization and localization. Now, it is time to move to the most common defects that QA specialists face while testing the internationalization readiness and quality of localization.
Let’s start with the defects that usually come along internationalization readiness testing.
- Broken encodings. If your application does not recognize, for example, Chinese characters, then when you decide to switch to a Chinese locale, you will see unidentified squares instead of hieroglyphs you expect to see.
- Why else are unsupported encodings of such a danger? For example, we do not plan to translate the app into other languages; however, we would like to make it available all over the world. In such a case, while trying to insert unsupported characters into the search field or create login and password, Internal Server Error 500 may appear, at best. At worst – the server will be down.
- Another pain in the tester’s neck is unsupported local calendars, various data and time formatting depending on the region. For example, there could be either 12-hour or 24-hour clock, also data formatting could differ from the local operating system’s formatting set natively.
- Aside from data and time formatting, testers often forget to adapt the decimal symbols that should correspond the locale set natively in the operating system. a1qa team had a project where comma separator was not included into US-locale encoding.
- The hardcoded elements in the app are of a particular note. Such defects are rather common and should be fixed as soon as possible.
Inability to add new translations or change the pictures, colour schemes for a particular region also fits in this group of defects.
- Verifying internationalization readiness, it is important to check whether there is a possibility to change text orientation and to mirror user interface for several languages. However, it is crucial to keep an eye that the characters themselves are not mirrored and all the fonts are displayed correctly.
Now we would like to move to localization testing defects.
If internationalization was done correctly, the most common defects of localization will only include UI defects, undertranslations and overtranslations. However, functional defects, which are of high priority for any app, may also appear.
- One of the most common localization defect is the use of different names for one and the same element. Usually, it concerns OK and Cancel buttons. It often happens that in some parts of the app these buttons are translated into the local language, in others –left with no translation.
Thus, names for buttons used for one function should be harmonized.
- The path to system folders is another thing to be checked during localization testing. To do it, it is necessary to disable internet connection. Often the links to system folders may be damaged during translation and thus they won’t lead to the right resources anymore. The user sees the empty square for the picture, but there is no picture itself, as the path is incorrect.
- As we have mentioned before, the lack of support of local calendars is the internationalization challenge, whereas undertranslation of these calendars is the issue for localization. You should pay attention to tooltips and system notifications, as they are often left forgotten.
- UI defects. Unsupported fonts, incorrect button and drop down list sizes, inaccurate division of words – all these are the most vivid examples of UI defects. Usually there are quite a lot of them, especially when pseudolocalization tool was not used during internationalization. Pseudolocalization is a method that implies strings preparation 30% longer than they should be originally to ensure there is a room for translations.
- Undertranslation. A native speaker could easily find mistranslations and undertranslations in the app. Thus, it is essential to engage professional linguists who know target languages and cultures perfectly to be able to check the accuracy and logic of all translations.
Summarizing the above, we would like to emphasize that functionality and business logic are the most important elements to pay attention to during testing. Obviously, it is more critical to find all functional bugs, like broken sorting algorithm or search field, that influence the work of end-users in the app.
Only after all functional defects are detected and fixed, you may move to the perfection of UI/UX – one of the localization challenges. Of course, these defects are not of such top priority as functional bugs; however, they influence user experience a lot. Indeed, who is excited to use an app in which it is impossible to find a character to enter your name correctly?