Behind every successful software localization project is a strong QA team that performs software testing. Testing ensures that translated applications appear correctly in the target language. It also ensures that the user experience remains the same in terms of look and feel.
We recommend building a multi-language software testing step into your process during a localization project after translation is complete. Working with QA professionals who speak the target language will help identify defects that might otherwise pass unnoticed.
Here are seven key reasons you need QA as part of your software localization project:
1. Software testing reduces functionality defects
When we talk about functionality issues, we mean any defects that keep users from having the intended experience.
First and foremost, software testers need to work through a set of use cases or user stories to make sure that they can complete the functional tasks of the application. If a code snippet was mistakenly localized, it could throw an error in the program that prevents users from doing what they need to.
Error messages are another area where testing must be done to detect problems. Error messages can be tricky to extract for localization. With a robust set of use cases or automated tests, testers can trigger every possible error message and ensure that they have been localized.
Software testers will also look for issues with paths to system folders. When users run an operating system in a language other than English, their folders also have different names. Your application needs to work with the system folders as configured on their computer.
Another functionality issue involves working links. A critical step in software testing web applications is to ensure that hyperlinks work at all. The next step is to verify that they point to target-language content when it is available.
For example, you may have translated your online knowledge base into several languages. If someone is using the program in German, they need to be pointed to the German version of the help article they need—not the English one.
And taking it even a step further: if a user is looking for help, are they able to search for a keyword in their native language and find related articles? Search functions also need to work with localized versions of your software.
All these functionality issues can be detected during the QA process with manual and automated approaches.
2. Software testing identifies UI issues
The user interface (UI for short) describes how the software program looks and feels as the user interacts with it.
During the software localization process, there are many elements of the UI that are modified. In order to ensure everything is functional, testers carefully review each aspect against a style or design guide that can also be localized.
Things like colours, fonts, images are not always culturally appropriate in different geographical locations. They, therefore, would need to be localized, i.e., adapted culturally to the locale for which it is intended.
Among the UI issues that commonly arise:
- Encoding issues. Software created with standard Latin characters in mind may run into problems displaying other character sets. That includes accented characters as well as different alphabets (such as Cyrillic) and character-based languages (such as Chinese). Thorough testing ensures that users will not see the dreaded white boxes appear where text should be.
- Layout issues. As we have discussed elsewhere, the amount of space it takes to say something varies significantly by language. Particularly when moving from a more concise language such as English, it is crucial to check buttons, menus, and other elements to ensure that text is not cut off.
- Overlapping elements. Likewise, some interfaces may be designed so that elements expand to fit the text. If this is the case, testers will check to ensure they do not overlap other elements.
- Missing text. Despite best intentions, text sometimes goes missing during the localization process. Testers can pinpoint those places to slot in the correct text.
3. Software testing ensures that inputs work in the target language
When an application is localized, end-users need to be able to input data the same way that source language users do.
A few examples:
- Address formats. Users need to be able to enter addresses in the format that best suits their country. Users outside of the United States, for example, should not be required to specify a state. Similarly, Chinese users are accustomed to entering addresses from largest to smallest location, with the country coming first and the apartment number at the very end.
- Character sets. If a user inputs content using characters outside the standard Latin alphabet, will the application correctly handle their inputs? Testers should work through a series of use cases for each language to confirm that the software functions with target-language input.
- Hotkeys. Shortcuts need to be adapted to fit standard practices for the target language. For example, the German word for ‘file’ is Datei, so German speakers use Ctrl + D instead of Ctrl + F to open the file menu.
- Character limits. One developer reported that his team allowed only six characters in a field where users entered their income. In the Eurozone, that made sense—but many Japanese users would not have been able to enter the total value of their salary in yen.
4. In-language testers can identify potential language issues
When possible, software testing should be performed by bilingual testers, who can spot language issues in context.
One issue to look out for is over-localization. It happens when translators localize elements of the source text that should not have been modified. The simplest example is a brand name that is also a source language word, like Thermos.
There can also be issues with gender and number in the translated text, often caused by the use of variables. We have written previously about how best to avoid issues with the agreement during the user interface localization process, but issues can still happen. Testers who speak the language can detect grammar errors caused by variables that weren’t apparent in the translation stage. They then report them to the localization team to correct them.
Testers can also look for strings that are incorrect in context. A classic example is the word “Home.” In English, we use the same word to indicate the home screen of a website and a dropdown menu containing household products. But in French, they are two distinct words. Testers should verify that the meaning is correct within its specific context.
5. Testing can detect internationalization issues
Internationalization, or i18n for short, involves developing software in a way that ensures it will work well for users from other regions or languages. Internationalization usually precedes localization or l10n, and both stages are parts of the complete globalization cycle for adapting your application to the language of your potential customers.
The QA process also needs to look at potential internationalization issues that may not be language specific. Some may be region-specific, while others may apply to multiple countries or regions.
For example, currencies and measurements need to be converted correctly. If the original software program mentions a value of $500 CAD, the localized version needs to reflect the currency in use. The value of $500 in Brazilian reals hovers just over $100 CAD.
Text sorting is another potential internationalization issue. A dropdown list of country names should be ordered logically based on the target language. A Russian user will struggle to find the country they need if the list is organized using English alphabetical order.
Other internationalization issues include time zones, paper sizes for printing, and voltage standards, among others.
6. Software testing ensures compliance with local regulations
As part of the localization process, software testing should also ensure that applications comply with local regulations.
Software testers can ensure that a program adheres to prevailing privacy and data storage laws. For example, a medical records program may meet some EU countries’ General Data Protection Regulation (GDPR) standards. But if being marketed in France, it needs to follow even stricter laws.
Failure to comply with local regulations on data protection can lead to fines and other penalties.
7. Accessibility requirement for inclusivity
“The power of the Web is in its universality. Access by everyone regardless of disability is an essential aspect.”
– Tim Berners-Lee, W3C Director & inventor of the World Wide Web
Much like data protection, inclusivity is another area where the software needs to meet local standards. Many countries, including Canada, have laws on the books that require software to be usable for disabled individuals. If these accessibility requirements are not met, governing bodies can levy fines. Software testing can ensure that disabled users will be able to make use of your localized software successfully.
For example, many visually impaired users rely on screen readers to navigate software applications. The translated version of the site needs to be tested to ensure it works with a screen reader in the target language.
From the inclusivity perspective, accessibility is not limited to the disabled population. It would also apply to the aging individuals, for example, who grew into the web are now using it regularly. They might need to make adjustments to font, resolution, or contrast.
Inclusivity also ensures that websites meet 39 specific criteria designated by Wc3. It’s a very formal process that developers are not taught, so QA is needed to audit it. One area of importance is the careers/job page. This page must be accessible to those who need it and those in other geographies viewing that page and requiring its translation.
So, how does software testing work?
Once the translation process is complete, the development team leverages the translated strings to create a target-language version of the UI.
But even while translation is ongoing, testers are developing use cases that form the basis of their testing process. Their goal is to interact with the application to ensure a seamless user experience.
Testers will carry out some of these tests manually. For others, more complex testing, writing scripts would be required so that tests can be automated.
After testing, they report defects so that either the translation team or the developers can implement a fix before the application goes to market.
Quality Assurance is of utmost importance for your software, app, or website usability. As a form of accessibility, localization is just the first step in making your product accessible and inclusive.
We strongly believe that testing will add value to localization. This is why Art One Translations partners with a QA consulting firm with over 25 years of experience in quality engineering.
Thanks to our partnership, we now offer more complex and sophisticated levels of testing and can deliver software applications that have been expertly localized and thoroughly tested for the target market.
Contact us to learn more and to inquire about the following software testing services:
- Accessibility Testing/WCAG/ADA
- Security / Cyber
- Test Automation
- Performance Engineering & Testing
- System Integration Testing
- UI/UX and Functional Testing
- IoT Application Testing
- QE Transformation
Comments are closed.