Localization Testing Introduction: Launching a software product in the global market and competing against similar native versions require detailed planning, evaluation of the local markets and efficient execution. A particular software product that is widely accepted in America doesn’t come with certainty of acceptance in Continental Europe or Asia. In order to make that product reach out to the local markets in all these places, it becomes vital for the software to comply with the local user culture. This not only involves translating language strings of the software to the targeted native language, but also customizing the GUI to suit local market. Only when the local users find the experience worthwhile, they may shift from the existing native versions to the one you are proposing. Adapting to local usage calls for a combination of product functionality suited to the local environment, time zone, keyboard and the input styles, acceptance of localized character set and etc. It is not only the development, but ensuring high quality UX of the software after it has undergone localization is also essential. Hence, localization testing of such software is a big challenge that testers across the globe have to confront. What is Localization Testing? Once the localization of a software or web application is done, it has to go through rigorous testing before releasing it in the target market. From usability, functionality to linguistics, every segment has to be put to testing so that possible problems down the road can be avoided. Localization testing reveals shortcomings of the software or application in design, linguistics or the overall UX, to be fixed before launching into the market. This calls for Internalization that prepares the software product to be adapted for local usage. Making a global product local requires certification on multiple locales and configurations. Since, the number of tests conducted is extensive in this case; the management of the whole process becomes extremely critical. From managing the hardware and software intricacies to imitate native user environment to understanding what would work in localized software, the challenges are immense in this testing. Challenges of Localization Testing Testing localization and internalization of a software or web application involves numerous challenges to be overcome, namely: 1)
Ensuring quality of the product
2)
Maintaining cost effectiveness
3)
Delivery on time
4)
Finding out what exactly is to be tested
5)
Understanding how to evolve the Bug Tracking Process
Approach to Handle the Challenges QA InfoTech offers a smart testing approach as a solution to handle all the mentioned challenges. Taking a different approach to localization and internalization, we can ensure the quality of products is maintained in multiple locales. Performing the internalization testing on a single locale, software products can be engineered to adapt to cultures of all nations. This allows reducing the cost of software development, as Test Optimization matrix can be customized to meet project requirements. Test Optimization Matrix is a single entity that defines the amount of testing effort necessary at every locale. Our approach is to offer a step-by-step plan that takes care of Enablement, Localizability, Localization Functional and Linguistic testing of the software, scheduling it for execution at the correct time. The step-by-step approach includes: 1)
Planning of tests to meet schedule
2)
Ensuring sufficient coverage of test optimization matrix
3)
Supporting linguistic verifications
4)
Utilizing software tools to support test execution
5)
Evolving the bug process to integrate Internationalization and Localization testing
Here are certain important steps explained. Test Optimization Matrix of Localization Testing Based on past experiences, an understanding of core localization and internalization engineering issues, the test optimization matrix is developed. The basic concept behind this matrix was to minimize the testing efforts without compromising on the quality of the end software. Testing the developed software or application on localized versions of the operating system requires conducting series of tests of multiple configurations. Considering there are several local OS, hardware and locales that the software has to support, the number of combinations to be tested becomes huge. So, testing all of it becomes daunting. Neither testing these can be done within the said time or the budget. Thus, the coverage plan is to be optimized to complete the testing within the allotted time and budget. Localization Labs and Infrastructure A localization testing lab must have essential infrastructure including hardware and software required to simulate any native user action and UX on localized software. From using localized keyboards or other input devices, hardware that matches product requirements and operating systems in various languages all must be present in a localization lab. Having such labs in different locales involve a lot of expense. This can be handled well by adopting some virtual software and hardware solution that help in reducing environmental and lab costs. Virtualization helps in simulating not only multiple locale environments, but also several Operating Systems on a single computer. Linguistic Verification Support Another vital section is linguistic verification that concerns validating the translation of strings on a localized product. This requires skilled linguistic experts for every locale. However, the issue here is many a times, these experts are not very much computer savvy. Particularly this becomes problematic when a complex product is to be tested that involves complicated work flows. It is not always possible to train these linguistic experts in the product work flows to monitor the translation. So, a process can be adopted that allow screenshots of the products to be captured and sent to the experts for verification. Although, this requires Localization Functional Testers for the screenshots, this process helped the client in making the most of Linguistic verification at reasonable rates. Thus, a planned process of localization and internalization of software testing can reduce hardware and human resource, resulting in cost-effectiveness. Ensuring better quality and on time delivery in multiple locales, this process can reduce time to market the product in local markets with shorter release cycles.