The 5 dares of functional testing an application in Arabic

In the era of the digital economy 4.0, IT companies are building digital products for clients from around the globe. At Boldare, we help business from almost every region, from North America to the MENA. Globalization requires that software QA experts test software applications not only for English-speaking users (which is rather obvious these days) but very often in French, German or even Arabic.

In time, our teams, especially the testers, get used to how some words appear in foreign languages. For example, after a few months on a project for a Danish client, all team members were perfectly able to distinguish key words and knew what the application was asking us to do in all modals, alerts and messages.

But the story is quite different if you have to deal with a language that has a completely different alphabet than your native one. There is no chance of getting used to it quickly, and the product still has to be thoroughly tested.

So, what can you do if you have to test an application written in the Arabic language? I would like to share with you some advice based on two years’ experience in providing quality control for Arabic websites.

RTL - what is it and why is it important?

No, it’s not a German TV channel! The main issue regarding developing and testing software for Arabic users is that they write from right to left (RTL stands for right-to-left orientation and is a common acronym). In Europe, and many other regions, we use left-to-right orientation. Therefore, almost everything written in an Arabic application is not placed on the side that you expect it would be.

This applies not only for the text position, but also graphical elements like buttons and arrows, as well as the direction for swiping or animations.

Unfortunately, there is no other solution here other than to double the focus on accuracy during development and testing.

What might be a bit comforting, is that with time your understanding improves. At some point, our team internalised the RTL orientation to the point when we were able to suggest changes in positioning of panels or graphs to the left side to the client’s Product Owner.

Funnily enough, now our team members will probably have difficulties working on a project aimed at European users…

Translations beyond scheme

Content translation can be tricky, especially in the case of such a unique language as Arabic. During the project, the Product Owner was providing the team with copy to implement. Still, we needed to verify that we were applying all texts and messages correctly to the website or mobile application.

How to avoid common mistakes regarding working with such a culturally different language? Here are some hints that you might find helpful.

Most of all, you need to cooperate. Our Product Owner is an Arabic native speaker, so we asked her for help, a lot. For instance, we were only able to copy and paste the texts but sometimes we needed to type a word (e.g. while testing search-related functionalities). There was no other option than to ask someone who actually can do that to verify the behavior.

Also, sometimes it happened that we needed to use a word from a picture or something that was beyond our ability to write. It was a simple, and much more rapid, task for the Product Owner to provide us with such text.

Additionally, Google Translate became our number one friend. Of course, the tool does not provide top notch accuracy (e.g. the Aseer region was translated as ‘difficult’, the city of Jeddah as ‘grandmother’, and other cities as: forehead, love us, try, he cried, stupid, or she smoked!), but it has two great advantages:

  1. It gives you the general understanding of the provided text.
  2. It helps to compare text provided in a user story with the one that is displayed to the end users.

I will make a bet that when you were a kid you played a game that was about looking for differences between two pictures. That is how our testers sometimes approached the testing of translations. We treated the sentences as pictures and tried to spot the differences. Surprisingly, it worked perfectly most times, there were not many reopens throughout the product development.

For example - once, there was a case in which our Product Owner spotted that the last letter in the text was incorrect. It took us quite a long time to reproduce and spot this issue. Only when we pasted the expected copy, and the one that was in the application, one under another, and compared them, could we find the difference. And it was the only way to spot the error because, oddly, the search feature was recognizing the incorrect text as correct.

Graphs and numbers in functional testing

Yeah, I know, they use arabic numbers. But because of the RTL orientation we also had to change the graphs’ positions, and apply labels correctly (all signs such as %, labels for thousands and millions, currency symbols, etc. should be on the left side of the number).

It was extremely difficult to remember consistently and spot errors, especially without specific tasks related to this issue. A good tip is to remember about these small but significant details and have a look at them during exploratory sessions or when testing other issues.

Also, beware of commas, especially that they are different in Arabic than in English, and if you do not know about that it is difficult to spot the difference (‘,’ to ‘،’.), however it matters both for text and number presentation.

Application logic and data structure

We prepared test environments in two languages, so that we could compare the English and Arabic variants, although the product would not have an English version on the production environment.

In the first phase of testing, it was easier for the team to use English names to verify the basic scenarios (for checking logic, not visual aspects and translations). Then, when we were sure that the positive scenarios worked, we tried to do the same steps with the Arabic version.

Also, it is a good idea to compare your website with other Arabic services in a similar business domain. So, if you test an ecommerce platform, then find an Arabic ecommerce platform you consider to be a benchmark to see how they present data to make sure that the information structure you’re testing includes the local context of users’ behaviors and habits.

Testing visual aspects

Last but not least, text appearance impacts on layout so you cannot rely on an English version. Usually, what fits nicely at the design stage, causes some trouble when live. We decided to use the Arabic sample texts in our design, but still sometimes it was not the same as in the specification and required additional verification.

Functional testing in Arabic - how to ensure the quality of the product

Building a digital product for a specific market and region, so different from your own, is always a challenge. To ensure the quality of the product, not only a QA specialist but the whole development team has to channel their efforts on the product and treat it as if it was their “own.” By open and immediate communication with the client and by following the scrum process and the tips in this article, you can overcome issues specific to the market; in this case, the MENA region.

And it works both ways. When a company decides to outsource the development of a digital product to a provider from outside its cultural and linguistic circle, it has to consider many critical factors in this decision. One of them is language and correct implementation of the content by the external development team. Especially given that content is what helps to attract users.

That is why, in the search for a well-matched business partner, the experience of the development team in building and testing digital products targeting a specific region, and its willingness to engage in honest communication and big-sky thinking, is a crucial factor.