370 likes | 390 Vues
Globalization Testing- Getting your software World-ready. Jaideep Khanduja, Head Quality Assurance G4S IT Services India Pvt. Ltd. Good Afternoon. مساء الخير. Bonne soirée. Goedenavond. ערב טוב. Καλησπέρα. Guten Abend. Добрый вечер สวัสดี گڈ ایوننگ.
E N D
Globalization Testing- Getting your software World-ready Jaideep Khanduja, Head Quality Assurance G4S IT Services India Pvt. Ltd.
Good Afternoon مساء الخير. Bonne soirée Goedenavond. ערב טוב Καλησπέρα Guten Abend Добрый вечерสวัสดีگڈ ایوننگ नमस्ते Selamat malam Iyi geceler
Do you want your Software product to Interact with Global customers like any of the above ? Video 2 Video 1 Bruce Happily
What’s covered in this presentation ? Part-1 Overview Part-2 Some real-time myths & challenges Part-3 Moving Towards Best Practices
Internationalization (I18N) Parts of Globalization testing Globalization (G11N) Localization (L10N) Jan Scherpenhuizen = Jan S12N Numeronym game – Digital Corp Jaideep = J5p
Internationalization is the process where the code of the software is modified so that it is completelyindependent 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 I18N · 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.
Unicode Clean Components of I18N testing Locale Awareness Input / Output Process Internationalization (I18N) Single Base Binary (SBB) Localizability Multilingual User Interface (MUI)
About L10N 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 i18n 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 I18n and L10N testing since day one, the day when the regular testing starts on base product (English) · Defining a suitable strategy for i18n testing to pull out all i18n related critical bugs at the outset. · Planning to fix, regress the bugs and its impact on i18n environment since outset.
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
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 - I18N –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 i18n 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 - L10N 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: L10N 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 code- page used.
Leverage Virtualized Test Environment Localized versions of Server and Client OS • Localized Infrastructure machines (Exchange, Sharepoint etc.) • Localized keyboards • Localized 3rd 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 I18N 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 G11N issues using EN build. • Minimize the L10N effort involved. • Save crucial time at later stages. • How? • Pad the English text with localized characters in the resource file
Thank you Merci Danke ありがとうございました 謝謝您 감사합니다 Dankie dat jy Ευχαριστούμε Dank u Terima kasih शुक्रिया Спасибо ขอบคุณ شكرا آپ کا شکریہ teşekkürler jaideep.khanduja@in.g4s.com http://www.g4s.com http://itknowledgeexchange.techtarget.com/quality-assurance/