Globalization Testing Getting your software Worldready Jaideep Khanduja
Globalization Testing. Getting your software World-ready Jaideep Khanduja, Head Quality Assurance G 4 S IT Services India Pvt. Ltd.
Video 1 Video 2 Bruce Happily Do you want your Software product to Interact with Global customers like any of the above ?
What’s covered in this presentation ? • Part-1 – Overview • Part-2 – Some real-time myths & challenges • Part-3 – Moving Towards Best Practices
Part-1 Overview
Parts of Globalization testing Localization (L 10 N) Jan Scherpenhuizen = Jan S 12 N Numeronym game – Digital Corp Jaideep = J 5 p
Internationalization is the process where the code of the software is modified so that it is completely independent of any culture specific information. The hard –coded strings of the software will be pulled out and stored in external files that are called as resource bundles and these will load at runtime so that, the software will behave appropriately based on the locale set /installed to the client machine.
About I 18 N · Externalizing of strings, graphics, icons, texts etc. · Selecting code page and defining code page conversions · Modifying all the text manipulation functions to be aware of the code page. · Changing the logic of all the formatting functions (Date, Time, Currency, Numeric, etc) · Changing the Collation /sorting functions Note: Code page is nothing but assigning a specific number to each character in a language in order to handle text. It is a mapping table of characters to its numeric value. ASCII is a good example of code page.
Components of I 18 N testing
About L 10 N It is the process of customizing the software product for each language that is to be supported. It is the aspect of development and testing relating to the translation of the software and its presentation to the end user. It includes translating the program, choosing the appropriate icons and graphics and other cultural considerations. It also may include the translation of help files and documentation.
Effective Test Strategy and Test Plan for i 18 n testing: Simultaneous release is important in a world where, instant communication is needed worldwide. In order to maximize the market benefit, and to show of commitment to regional markets, clients would want to release their product to multiple markets, on time, simultaneously. In consideration of this, the test plan and strategy should focus on · Kick start of I 18 n and L 10 N testing since day one, the day when the regular testing starts on base product (English) · Defining a suitable strategy for i 18 n testing to pull out all i 18 n related critical bugs at the outset. · Planning to fix, regress the bugs and its impact on i 18 n environment since outset.
Example of part of Application not being Unicode Clean
Text Truncation
Control Overlapping
Some questions Can Localization exist successfully in a Software product without Internationalization in place? NO Can Internationalization exist successfully in a Software product without Localization in place? YES Can Globalization exist successfully in a Software product without BOTH in place? NO
Part-2 Myths & Real Life Experience
Myths Myth# 1: Globalization Testing is primarily about testing the User Interface Myth# 2: Globalization Testing can start Only after the base product is Translated Myth# 3: A person who doesn't know French cannot test the French version of the Software Myth# 4: If a test case works fine in French language, it would work fine in German language as well. Myth# 5: The language verification of User Interface can be done by comparing the text on screen with translation outputs of any freely available Online translator
Experiences - I 18 N –Testing · Compatibility testing: Testing the product for language compatibility, this includes testing the product behavior in identifying and initializing from its language environment and its ability to customize to that environment. · Functionality testing: Functionality testing is the core area of i 18 n testing. It typically includes running the whole functionality regression test on different language environments and exercising the interface with native language strings. It involves verifying the culture specific information such as date/time display. · User interface Validation: To check for visual problems such as text truncation or overlap, graphics issues or other visual problems. · Interoperability testing: It ensures that the software interacts properly with targeted platforms, operating systems, applications (and versions) and so on. · Usability testing: It evaluates the ease of use of the system · Installation testing: Testing to ensure if the product installation messages are displayed in a corresponding language when installing the application on a dedicated server
Experiences - L 10 N Testing Localization testing is a language verification testing mainly focusing on the appropriateness of the translation in the following items. · GUI context · Online help files · Error messages, Dialog boxes · Tutorials/Readme files · Documents such as User manual, Installation guide, Release notes etc, Testing also involves in checking the GUI layout, and making sure nothing is truncated in the UI and Correctness and consistency of the Error messages. Note: L 10 N testing is typically done by the native speaker of that specific language
Experiences - Learning · Externalization of strings: No string should be hard wired to the code. It should be externalized to a resource file so that it can be translated to the required language and can be applied during run time. · Date and Time Formatting: Month, Day, Year formats supported as to which comes first · Numeric and Currency formatting: Currency symbols and how grouping the Numbers differ in each country · Collation /Sorting Order: Sorting order will change depending upon the native language. Specific rules will be defined for sorting process, based on the codepage used.
Part-3 Moving Towards Best Practices
When to start Globalization ?
Leverage Virtualized Test Environment • Localized versions of Server and Client OS • Localized Infrastructure machines (Exchange, Sharepoint etc. ) • Localized keyboards • Localized 3 rd party applications to test. • Localized test data
Belkin Chevrolet Ericsson European Union Google Ikea Kodak Macromedia Microsoft Nortel Networks Novartis Siemens Unicode Consortium Xerox Yahoo! Facebook Flickr Linked-In Twitter.
Many more companies do rely on Unicode "behind the scenes" – that is, within their content databases. For example, a content database may hold all text in Unicode format; when the content is pulled to the Web server, it is transcoded into the native encoding. Unicode provides a unique number for every character, no matter what the platform, no matter what the program, no matter what the language.
Internationalized Automation • Eliminate the Code debt. • Apply the concepts of I 18 N Software design to Automated scripts – Minimize the UI dependence- Externalize – Data driven – Use Unicode • Make the Test scripts, Language, OS, Site dependent to enable simultaneous running.
Pseudo Translation testing • What ? • Simulation of a localized product • Why? • Uncover G 11 N issues using EN build. • Minimize the L 10 N effort involved. • Save crucial time at later stages. • How? • Pad the English text with localized characters in the resource file
Ευχαριστούμε Terima kasih Спасибо ﺷﻜﺮﺍ آپ کﺎ ﺷکﺮیہ Thank you Dankie dat jy Merci Dank u Danke शकर य ありがとうございました 謝謝您 ขอบคณ 감사합니다 teşekkürler jaideep. khanduja@in. g 4 s. com http: //www. g 4 s. com http: //itknowledgeexchange. techtarget. com/quality-assurance/
- Slides: 36