Agile Performance Testing - Testing Experience
Agile Performance Testing - Testing Experience
Agile Performance Testing - Testing Experience
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
With more and more software organizations realizing the importance<br />
of global markets, there has of late been immense focus<br />
on software globalization engineering. In order for the software<br />
product or application to be appropriately globalized, it should<br />
precisely involve software globalization in its design. Introducing<br />
software globalization in the design is usually not as straight-forward<br />
as it may seem. There are many factors including supporting<br />
character sets from the languages all over the world, making the<br />
installer multilingual, making applications locale-aware, actual<br />
translation of User Interface (UI) elements, taking care of many<br />
cultural considerations such as handling of date/time, numeric<br />
formats, currencies and a myriad of other things that change<br />
from one location to another. All in all, it’s a complex activity and<br />
thus software globalization testing also assumes greater importance.<br />
Software globalization testing primarily comprises two different<br />
parts: internationalization testing and localization testing.<br />
Internationalization is planning and implementing products and<br />
services so that they can easily be localized for specific languages<br />
and cultures. So for any product to be successfully localized in different<br />
languages, it is imperative that it has to be internationalized<br />
properly. Internationalization is abbreviated as I18n (where<br />
“18” represents the number of characters between the letters “I”<br />
© iStockphoto.com/Sage78<br />
Moving Globalization Test Quality upstream<br />
using Pseudo Translation Approach by Anuj Magazine<br />
and “n” in the word “Internationalization”) .<br />
Localization is the aspect of development and testing relating to<br />
the translation of software and its presentation to the end user.<br />
Localization is abbreviated as L10n.<br />
Accordingly, the prime charter of I18n testing is to test the changes<br />
introduced in the product as a result of Internationalization<br />
activity. And similarly, L10n testing is done to test the changes introduced<br />
in the product as result of localizing the product.<br />
With this background in mind, let me state the focus area of this<br />
article. This article primarily deals with one of the unique techniques<br />
called “Pseudo Translation” that helps find the globalization-specific<br />
bugs even before the actual translation of products<br />
has taken place. In doing so, it helps to move the quality upstream,<br />
reduce translation costs and, most importantly, helps the<br />
organization to achieve “Simship” (i.e. simultaneously shipping<br />
the product in all the supported languages).<br />
Before we appreciate what pseudo translation is all about, I<br />
would like to explain some of the common issues found during<br />
globalization testing.<br />
Some common bugs found in globalization testing:<br />
Bug type Bug description<br />
Hard coding Externalizing the strings from source code is an important I18n activity. If not done properly, it results in<br />
English language strings even in a product localized in any language, e.g. German etc.<br />
Locale unawareness Making the product locale-aware is again an I18n activity. Being locale-aware means that the product is<br />
able to recognize the underlying OS locale settings, such as language, date/time format, numeric/monetary<br />
formats etc. Locale- unaware products usually tend to display only one format relating to date/time,<br />
numeric etc., irrespective of the language run.<br />
Character corruption -<br />
Question marks<br />
Character corruption -<br />
Random characters<br />
Character corruption -<br />
Font display<br />
Character corruption is usually signified by the incorrect display of localized characters, usually seen as<br />
question marks (???) on the UI. This is typically caused by incorrect Unicode to ANSI conversion.<br />
Another form of character corruption is related to the display of random high ANSI characters (⅓, †, ‰) on<br />
the UI. This is typically caused by wrong code pages being referred to.<br />
Yet another form of character corruption is related to incorrect display of font. Presence of vertical bars,<br />
boxes and tildes (|, o , ~) indicates that the selected font cannot display some of the characters.<br />
UI sizing issues An example of a UI sizing issue is: Let’s say that after the product is localized into a non-English language,<br />
say Japanese, the UI gets distorted in a way that corresponding lines of text are overlapping each other,<br />
leaving the text not fully readable. These types of issues are usually caused by planning insufficient space<br />
in the UI for the localized text.<br />
Text truncation Text truncation is a type of issue which results in either the leading or trailing, horizontal or vertical parts<br />
of text being curtailed, resulting in the UI looking unprofessional.<br />
6 The Magazine for Professional Testers www.testingexperience.com