• Post category:IOS
  • Post comments:0 Comments
  • Post author:
  • Post published:06/11/2021
  • Post last modified:06/11/2021

The latest and greatest technology: check. Fantastic design: check. The functionality that users want: check. A product that’s ready to take on the world: check. A translation and localization workflow that ensures product/market fit: uh-oh!

Try asking your Product team about their worst nightmares—they’ll likely say that discovering errors once a software product has gone live is up there with a root canal or a visit from the in-laws. That’s why plenty of time usually goes into software quality assurance: Detecting and fixing bugs before launch can save companies a lot of money, time, and customer satisfaction issues.

Localization testing is just as important, yet it too often slips through the cracks and gets sidelined by other priorities in software localization. If your software is envisioned to work in multiple markets, looking at localization quality from every angle possible can help you avoid issues that might alienate your target audience.

That may sound daunting, but it doesn’t have to be. Keep reading to discover the best localization testing practices and tools, and how you can ensure optimal usability of your software on first launch.

What is localization testing?

Localization testing is the pre-launch process of verifying that a specific product build (e.g., a mobile app or website) works as envisioned in every market and meets the cultural, linguistic, and technical expectations of local users. It’s done one language at a time, and it’s planned rather than ad hoc.

However, localization testing isn’t usually a priority in software development until localization quality becomes an issue—usually after the software has already been launched. The ideal scenario is the exact opposite: Localization testing should be integral to development, internationalization, and the localization strategy from the very beginning.

If a localization testing workflow isn’t planned and executed properly and up to snuff, it can spell trouble for any company looking to expand internationally. Localization issues can seemingly appear out of thin air after a product launches in the market, so it’s important to detect and correct them in time.

How does localization testing work?

An expert native speaker for the specific market where you want to test localization quality conducts localization testing. What they check for will depend on the type of localization testing they carry out.

Functional localization testing

Regular functional testing seeks to answer the question: “Does the software actually work?” In other words, can a user do what they need to do with it? Functional localization testing goes one step further: It seeks not only to answer that question but also: “Does it work here and now, in this market?”

Because in most cases the functionalities of the original product remain the same in all its localized versions, functional localization testing is usually concerned mainly with UI and localization-specific factors that can affect how users experience these functionalities.

Functional localization testing is about making sure that:

  • There are no broken strings or placeholders, or incorrect concatenations.
  • Language resources load correctly.
  • Users can freely navigate and complete tasks through every screen without difficulty, e.g., load times are fast enough to allow speedy performance.
  • The software is compatible with the hardware used in the region.
  • The software displays the right language, has properly localized number formatting, etc. for each region.
  • There’s enough space in the software’s text boxes for users to enter information in the local language required to complete a task.
  • Fonts render correctly and images appear as intended.
  • Users cannot access features that are not available in that market or language.
  • Hyperlinks, hotkeys, and buttons work as they should.
  • Users don’t experience issues with local payment methods.
  • Accessibility isn’t compromised by localization (e.g., images with untranslated alt-text, which visually impaired users need to navigate the software).

The main aim is that users get the user experience quality they’ve come to expect from competitor products already established in the market.

Linguistic localization testing

Linguistic testing in the context of localized software products is about checking for localization quality in text. This type of localization testing is usually left to professional linguists who are native speakers of the language in question.

Linguistic localization testing aims to answer questions like:

  • Is terminology consistent throughout the UI, the website, and any other text (e.g., product documentation)?
  • Does text read naturally and clearly to native speakers of the language?
  • Are there any translation quality problems that could mislead or confuse users?
  • Is the localization linguistically accurate and idiomatic, including a flawless localization of abbreviations, acronyms, and standard phrases?
  • Are images culturally appropriate and meaningful to native speakers of the target language?
  • Are the brand’s tone of voice and messaging consistent between the target market and all other markets?

Linguistic problems can’t be caught with traditional functional tests, which means that you should involve proofreaders and reviewers with strong professional skills and localization knowledge throughout the localization process, especially when your localization follows a continuous approach.

Regional localization testing

There are always local and cultural considerations to localization testing. For example, localization testing should always include considerations of:

  • Data privacy regulations in that specific region.
  • Local laws and regulations that may affect localization, such as country-specific tax policies that may impact product pricing across markets.
  • Local cultural sensitivities, such as images that may be deemed offensive or controversial in some markets, colors that may hold particular meanings, representation of ethnicity, etc.

Localization testing should always aim to ensure a culturally acceptable localization product with the highest functional and linguistic quality.

What’s the role of internationalization in localization testing?

As the last link in the globalization chain, localization testing validates if the localization process has succeeded at all levels. However, this is only possible if the product build had previously been properly prepared for localization.

That’s exactly what the first link in the chain, internationalization (i18n), aims at: Making your code localization-friendly from the start. This step will help you avoid reworking parts of your software at a later stage and prepare the ground for high-quality localization results.

Common internationalization considerations include character encoding (so the software can support as many scripts as possible), avoiding the hardcoding of localization strings, and other localization-friendly software development practices.

After localization is completed, testing will make sure that all internationalization efforts have been successful and localization quality is optimal.

Planning for accessibility compliance

Web accessibility best practices require that software be fully accessible to people with disabilities. There are international guidelines for software accessibility, such as the Web Content Accessibility Guidelines (WCAG) 2.0 which software developers are required to follow.

As part of accessibility compliance, software must support the languages of users with disabilities: Blind and visually impaired users need screen reader software that can read aloud text content and identify UI elements by their appropriate names.

When a team starts to think of adding accessibility identifiers to all forms and text fields during development, as part of internationalization, this avoids major delays further down the road when localization testing spots the need to add UI identifiers for accessibility.

In other words, planning for accessibility compliance during internationalization is a necessary step before localization starts. Localization testing can then help ensure that localization hasn’t led to the loss of functionality required by people with disabilities according to international regulations and laws regarding software accessibility.

What are the steps of localization testing?

So how do you test localization? For testing to be thorough and as automated as possible, and whether you choose external localization testing providers or you perform localization testing in-house, the team in charge of it should follow the below steps:

  • Devising a test plan: Based on the requirements of your localization strategy, a plan should include what content will be subject to testing, whether testing will be exploratory or guided with a user guide, a list of all localization testing tasks, respective timelines, etc.
  • Gathering preparatory information: You should compile as much background information for testers as possible, such as documentation, test cases prepared using feature specifications and quality criteria, testing scenarios with expected results in the user interface.
  • Setting up a test environment: Similarly to your regular test environment, you simulate new markets in a variety of languages.
  • Generating a script for the region in question: Using a script with lorem ipsum text allows testing for functionality before the content itself has been localized.
  • Comparing the source and target scripts: This allows localization testing experts to identify any issues that may require localization optimizations.
  • Analyzing the results: Testers assess localization quality and prioritize localization fixes based on a previously set localization quality scorecard, with localization issues ranked as critical, moderate, and minor.
  • Reporting the results: Testers provide localization testing results in written or as indicated by project specifications.
  • Regression testing: Based on the localization quality priorities for each problem found, product owners can revert to developers and translators for them to correct usability, comprehensibility, and readability issues.
  • Iterating: This is done until localization quality reaches the required level for each new localization language or market.

Why is localization testing important?

No one wants to be the company that misses localization issues before launch or that alienates users because localization quality isn’t up to par—whether it’s for a web or mobile app.

To prevent this from happening to you, planning for localization testing from the beginning is essential. It will allow you to:

  • Save time and money: While it may involve additional costs and time for fixes, localization testing helps you prevent bigger issues and avoid rework further down the line, ultimately preventing higher overhead costs.
  • Build trust with users: Localization quality testing shows your users that localization is important to you, that you care about their experience, and that ensuring quality is instead integral to your product development process.
  • Enable compliance: Localization testing ensures that your product localization meets local market regulations.
  • Reduce churn: The more satisfied your users are, the less likely it is that they will leave your product.
  • Reach more users: Entering new markets with a great localized product helps you increase the size of your user base.

User environment simulation for localization testing

Users of multi-language applications are physically located all across the world. There might be different features available for different countries and even regions within the country.

For testing purposes, it’s important to have a way to simulate an environment that is as close as possible to what the user actually experiences. This includes the simulation of:

  • IP address locations: This usually involves using a VPN service.
  • GPS locations: There are software utilities available to make the software think that GPS coordinates are different from where a user is actually located.
  • Operating system locales: The application either depends on a specific account setting, application setting, or operating system locale. Most commonly, the application depends on a system locale. That’s why it’s important to verify that the locale is respected. Proper language should be displayed on switching the OS language.
  • Users’ accounts: If an application requires having a specific user account then proper testing involves creating accounts for each language.
  • Custom operating systems for specific markets: In some cases, there are specific operating systems set only for that market. In this scenario, those operating systems need to be installed to have a proper environment.
  • Using SIM cards available for targeted markets: Some smartphone applications depend on a specific cellular network signal. If that’s the case for your application, then having a correct SIM card for testing is an important aspect.

Can localization testing be automated?

When it comes to localization, most testing is manual, especially when linguistic aspects are concerned. Professional localization testers need to perform extensive research on the target market to know all possible issues that might arise. Then, they must create highly specific test cases for the software, read the content thoroughly and experience the software as if they were the end-users.

However, there are testing tools available that can automate some functional localization testing activities, such as:

  • Validating page navigation
  • Validating conditional flows
  • Checking all functionality at the UI layer
  • Managing localization test cases
  • Managing and tracking localization issues
  • Checking for accessibility compliance
  • Capturing screenshots

The more you can push to automate functional testing, the better. This way, the testing team can focus their efforts on localization testing activities that rely on human expertise.

Top 8 localization testing best practices

Regardless of the software or the languages involved, there are best practices for localization testing that can help ensure overall software quality.

Define a localization testing strategy

To map out your testing strategy, ask yourself:

  • How much software and how many languages will be tested?
  • What are your testing requirements (operating systems, hardware)?
  • What software will be used for functional testing?
  • What software will be used for localization testing?
  • Where will the software be tested; if it’s not onsite, how can you simulate all environments needed for testing?
  • Who will be performing the tests, i.e., is your internal team enough or do you need to bring in external experts?
  • When will the software and tests be performed and what tools are necessary?
  • What localization issues need to be tracked and reported by testers?
  • What documentation and resources (glossaries, checklists, test cases, etc.) will you provide your testers with?
  • What’s the scope of UI testing?
  • What’s the scope of linguistic testing?
  • How and when will testers report any localization problems they find?
  • How will feedback be communicated along the software development lifecycle?

Having software localization testing planned from the start and integrating it into the software development life cycle will only help improve software quality.

Establish and monitor KPIs

It’s important to define what you want to track and how software quality will be measured before any localization testing activities begin. The number of language-related complaints or software support requests from foreign markets and localization satisfaction ratings are some examples of Key Performance Indicators (KPIs) that you can track.

Test early and often, but take your time

It’s a good idea to start localization testing activities early in the software development process. The earlier that software quality issues are identified, the more time your team will have to fix them before launch, which translates into lower costs and faster time to market.

However, software localization testing should not be rushed. Planning, research, and analysis to determine product-market fit and localization requirements will not be completed in a day.

Finally, ensure that you test every software iteration. It’s important to track software changes and localization issues to ensure that newly introduced software features don’t introduce localization quality problems into the software.

Provide your testers with a comprehensive set of resources

Glossaries, translation memories, brand guidelines, test cases, and software user guides are some examples of software localization resources that can be made available to testers to help with software localization testing.

Work with specialists

Whoever is in charge of software localization testing must have a thorough understanding of software localizability, tools, user experience, local-market habits, and software quality assurance.

Working with specialists who are based in the markets to which the software will be localized is the best way to ensure a successful outcome.

Automate testing as much as possible

As mentioned above, software localization can be very complex. Automating functional software localization testing allows your team to focus on the quality of software translation and not waste time performing manual tests that software can already do (and much better).

Streamline the whole localization process

Tighter control over all aspects of the localization workflow makes it easier to prevent localization mistakes, which can reduce the time needed for localization testing later on.

To streamline the software localization process, you should automate as much as possible; modern technology such as a robust translation management system (TMS) has the capacity to take software localization automation and quality assurance to a new level.

Plan and train for internationalization

When software developers work with localization in mind from the beginning, localization testing becomes less complex. Internationalization makes software easier to localize and avoids costly mistakes, so it’s wise to invest time and resources in training for and planning software internationalization from the start.

Localization testing is a critical global success factor for software products

In conclusion, a thoroughly planned and executed software localization testing program can be the difference between localized software that succeeds in foreign markets and software that is quickly abandoned by users.

When localization testing is done correctly, the results can provide a competitive advantage for software companies looking to sell software products outside their home markets. Testing reduces the cost of fixing mistakes after launch and minimizes the risk of localization problems that can damage the brand’s image.

By devising a clear testing strategy, devoting time and effort to planning, research, and adaptation before localization begins, automating processes with modern localization technology, and maintaining proper linguistic resources, you are one step closer to software localization success.

If you want to further explore software localization, the following guides will provide you with actionable insight:

  • 10 Common Mistakes to Avoid in Software Localization
  • How to Create Good Multilingual UX Design
  • A Developer’s Guide to User Experience in App Localization

Leave a Reply