Introducing jeuxen – testing USSD apps like never before

332 0
Introducing jeuxen - testing USSD apps like never before

“Good engineers are not amused simply by the profit they make, they are mostly amused by the problems they solved, the challenges they faced. You can see that when they solve problems even knowing they wont make profit. Its not stupidity. Its passion. Thats their secret”. Mário Júnior

Jeuxen is a USSD applications test automation tool designed to empower teams in a quality assurance mission.

Honestly, we didn’t invent test automation. We invented Jeuxen, but test automation was a concept already there and well stablished.

Jeuxen is about USSD test automation using a development technology agnostic approach.

There countless backend stacks used to develop USSD applications and Jeuxen offers you a way to test your USSD application regardless the stack you used to write it. Test cases are written in plain JavaScript, a clean JavaScript code (no asynchronous code and callback hells).

It’s a platform designed for those who want to take their USSD applications acceptance testing seriously.

But It’s not only about acceptance tests. It’s also about regression tests, both in a automated way. Jeuxen steps into your software process and not into your application’s architecture.

If you can’t understand the value of acceptance and regression tests, then, you can’t understand the benefit of using Jeuxen.

It’s a mean to an end. You must understand the end in order to comprehend and value Jeuxen.

Developers and test engineers interact with Jeuxen through Jeuxen-IDE and Jeuxen CLI. Let me tell you more about these two.

Jeuxen-IDE

It’s a web based code editor to create, edit and run test cases (It’s nothing like a full blown JS IDE, not even close). Jeuxen IDE prints test cases output right on the browser’s console. This code editor highlights syntax errors and also highlights test assertion errors.

Jeuxen-IDE
Jeuxen-IDE

There is a special feature on jeuxen IDE, which is a mobile emulator. A mock mobile phone that allows developers to simulate a real phone and dial USSD codes. Wait, it’s way more than a mock mobile phone. It allows you to record your interactions and in a single mouse click gesture, generate the assertion code for them.

Jeuxen-IDE-2
Jeuxen-IDE

Jeuxen-CLI

It’s the command line interface of jeuxen. It’s used to start the Jeuxen-IDE web server, create a new project, run all test cases or run a specific test case. The jeuxen CLI offers the convenient way to get jeuxen along with your continuous integration pipeline. That’s one of the things we had in mind from the beginning.

Jeuxen is a Java Citizen

It is powered by Java SE 8. This is it’s only requirement to run. The JRE is enough. No need of a full blown JDK installation. Don’t be confused. Despite the fact that it was built in Java, it allows you to test USSD applications written in whatever language you used. This is why we define it as technology agnostic. .NET developers, chill out.

Being it a Java based tool, means that people would need to write some Java code to integrate the tool with their applications?

Not exactly. Look at databases for example. In Java we talk to a database using a JDBC driver. We didn’t write the JDBC driver (most of us), someone did and we are just re-using that “driver”. Re-usability is a characteristic of Jeuxen, but there no drivers. There are USSD channels, which you can think of as JDBC drivers. Java ships with no JDBC driver (given the obvious reasons), but Jeuxen ships with one USSD channel implementation, which means, you don’t need to write a single line of java code to integrate it with your USSD application project.

Jeuxen’s Current stage

We have released a developer preview version a few minutes ago, a non stable version, but good enough for potential contributors and users to get familiar with the idea and maybe give us some insights about it, before we get to a production-ready release, just like Microsoft did with windows 10.

I personally published two YouTube videos explaining how to get started, from the installation to the hands-on. If you are curious about this project, please watch the videos and give me some feedback on the matter. The project’s official website is: http://emerjoin.org/jeuxen and Its official releases repository is https://github.com/Emerjoin/Jeuxen-community. Bugs and suggestions should be submitted to that repo.

Docs will only be available from the first production-ready release onwards as there might be countless breaking changes until we get there and it would be hard at this phase to guarantee harmony between the docs and the builds. Until we get there, i will be releasing Youtube videos on my personal Youtube channel.

Installing Jeuxen

Getting started

Thank you for reading this article. Now, tell me please: what do you think about Jeuxen?

(Visited 221 times, 1 visits today)

Mário Júnior

Mário Francisco Júnior is the Head Of Software Development at Vodacom Mozambique.