Back in the days, when an app was being considered for globalization, two sets of testing were mainly accounted for – internationalization testing and localization testing. Under internationalization, formats (such as date, currency) were tested for, for readiness to be converted to another locale, pseudo localization where localization is attempted in a specific language such as German or even with garbage characters to again check for localization readiness, were considered. Under localization, a lot more in terms of testing across locales, covering both UI and functionality are accounted for. Translation testing covering both the translation correctness and linguistic cultural checks are also being taken up. So, where really does not enablement testing fit in the picture? As the name suggests enablement testing is part of the internationalization test efforts as the team gets ready for localization. It has become increasingly important off late with the varied ways in which a program accepts inputs. Earlier on, the inputs would primarily come in from a keyboard, whereas, off late, keyboard is one of the many ways in which the user provides his inputs to the system – the others being, touch screen devices, voice input, hand writing, gestures, sliding, swift keys etc. All of these need to be accounted for in the input method editor (IME) testing segment. This has its own challenges depending on the locale that is being tested, the font types etc. For example, while “:)” indicates a smiley in left to right languages, the same may mean nothing or completely different in a right to left language. Additionally, the devices from which the inputs come in bring in their own nuances, around ligatures, numbers, digits, special characters etc. And it is important to take this up every time there is a product architectural change, new features, OS support or locale support are added. This testing is however not as easy as it sounds. It has its own challenges around digits, fonts, forms, linguistic features, logos and symbols etc. For example, ligature in symbols such as CNN, pose very specific challenges in IME testing.
IME testing has to be tackled through a combinatorial solution system. It has to be partly handled in-house and partly through crowd sourced solutions as it may be difficult to have full resident knowledge of the input methods within the testing group. The kind of inputs and the devices from which they come in, may sometimes be best emulated at the user’s end. In all, IME testing is taking new shape in the world of enablement internationalization testing – with newer evolutions in the space of biometrics, artificial intelligence and the like the input sources and types to an app are getting increasingly sophisticated. Incorporating IME testing in the overall quality strategy will certainly give an app an edge in the globalization marketplace. This article owes credit to our resident linguistic expert Irfan Ahmed who presented on this topic in our recent technical forum, Prastuti.