Genystory | Harald Kahlfeld & Thomas Rebouillon (Mobile.de)

Mobile.de is the biggest marketplace for buying and selling vehicles in Germany. With nearly 14 million unique users, mobile.de proposes listings from both private sellers and 40,000 registered vehicle dealers. The company, which was established in 1996, employs 210 people in Berlin and is a subsidiary of eBay.

With 4+ stars on the Play Store, Mobile.de’s Android app is continuously improved with the help of Genymotion and its Gradle Plugin.

Between two automated tests, we have been lucky enough to interview Harald Kahlfeld – QA Engineer and Thomas Rebouillon – Senior Android Developer.

Which tools do you use in your testing environment?

“We have a dedicated Jenkins host machine based on Fedora. On this machine all our essential tools are installed including Java 8, the Android SDK and Genymotion with VirtualBox. We also use ADB, JaCoCo for code coverage, Gradle, and Espresso for UI testing.”

Pretty complete! At which stage does Genymotion intervene?

“We use Genymotion Android Emulator via Android Studio to test each new feature under development. Genymotion helps us checking edge cases like stable error handling. We perform unit tests, integrations tests, and UI tests. Later, we also write related regression tests if required.

In addition, we have established an emulator matrix on our Jenkins machine to run all our Espresso tests on Genymotion for our supported API versions as nightly build jobs. Genymotion Gradle Plugin comes in handy as it allows us to start and stop Genymotion virtual devices within all these jobs.”

Great then. Which features do you use the most?

“In general we use Genymotion Android Emulator to emulate devices that we don’t physically possess. It allows us to emulate many sensors and features – especially the Network and GPS widgets – during both development and debugging sessions. From time to time we also use the screenshot and video widgets to create images and footages for presentations.

Regarding continuous integration, we use GMTool in conjunction with the Gradle Plugin either locally or on Jenkins. For our Jenkins builds, we launch manually created devices thanks to a dynamic template mechanism injected with Gradle parameters – we occasionally need specific settings for testing such as device language, locales, time zones and animation timings.

We use almost all of the available commands, especially to take screenshots on the running virtual devices.”

In the end, how did Genymotion improve your app testing process?

Genymotion Android Emulator helped us stabilize our tests! When we implemented our continuous integration build chain, Google’s default Android emulator didn’t scale enough to meet our requirements. With Genymotion we could develop our app faster without connecting physical devices.

Not to mention that since Genymotion is integrated with so many tools, our end to end development and testing process is entirely streamlined. For instance, thanks to Genymotion Gradle plugin, we no longer need the custom build script we used beforehand.”

Any feature you’d like to see implemented within Genymotion?

“For our requirements, it would be useful to be able to run tests on specific devices instead of on every device defined in the template, preferably without using additional product flavors. Perhaps as a Gradle parameter containing the devices names?”*

Thanks again to Harald and Thomas for sharing their experience! Check out Mobile.de’s Android app on the Play Store. More about Genymotion Gradle plugin, Genymotion Widgets and all our premium features in our features page.

SEE IT IN ACTION

*Editor note: Actually this is already possible. To do so, you need to set the ANDROID_SERIAL environment variable with the adb serial of the devices you want the tests to be run on. The serials must be coma-separated. A dedicated option will be added shortly to our Gradle plugin to make it smooth and easy to configure (it’s in the roadmap ?).

Select a Cloud provider Marketplace

Genymotion Device Image for Cloud providers
- Private Offer -

Genymotion Desktop for Business
- Get a Quote -

Genymotion SaaS
- Increase Maximum Simultaneous devices -

Personal Use - Free

Genymotion Desktop for personal use is not suitable for trial or POC: you will not get any assistance and some features will be disabled. If you have already selected “personal use” and wish to get a trial license, please contact our Sales at [email protected].

Technical support is not available with Genymotion Desktop free edition for personal use. For more details, please refer to Genymotion conditions of use (Personal Use).

The following features are not available in personal use mode:

Follow these steps to get Genymotion Desktop and activate personal use mode:

  1. Go to the Download page and get the latest version for your system.
  2. Follow the instructions from Genymotion Desktop quickstart guide to install Genymotion Desktop.
  3. Launch Genymotion and click CREATE to create an account. You should receive an activation email within an hour. If not, make sure to check your spam.
  4. After activating your account, return to Genymotion and log in with your credentials.
  5. Select personal use when prompted.
  6. Read Genymotion Desktop quickstart guide carefully to setup Genymotion for your needs.