Blog

1,2,3 – Build! at Software Quality Days 2017

For quite a while, I am working on improving how we develop mobile applications. I’ve bundled my findings and experiences in a talk that I gave at the Software Quality Days 2017 in Vienna.

Besides my slides, you can also find an article in the Conference Journal. The full journal can be found here any my article is 1,2,3 – Build! – Continuous Integration for Mobile Applications. Enjoy reading and let me know what you think!

Continuous Integration for Python

The great article about Bitrise Pipelines and Tox for Python CI unfortunately does no longer exist. But I found this great article.

Basically you need a simple script like this, called bitbucket-pipelines.yml in your repo.

# This is a sample build configuration for Python.
# Check our guides at https://confluence.atlassian.com/x/VYk8Lw for more examples.
# Only use spaces to indent your .yml configuration.
# -----
# You can specify a custom docker image from Docker Hub as your build environment.
image: python:3.5.1

pipelines:
  default:
    - step:
        script: # Modify the commands below to build your repository.
          - pip install -U tox
          - pip --version
          - tox --version
          # Actually run tox (build, setup and run tests, as specified in tox.ini)
          - tox

The rest of the setup is quite straight-forward if you are used to work with tox.

I’ve create a file called tox.ini that makes sure that the requirements are installed and the tests are run with nosetests:

[tox]
envlist = py35
skipsdist = true
 
[testenv]
deps = -r{toxinidir}/requirements.txt
commands = nosetests -w UnitTests/

Arrangement of ‘Roulette’ by System of a Down

What’s better than a present for Christmas, that’s both for the presentee and the presenter. I was lucky enough to have this opportunity this year and arranged the song Roulette by System of a Down for a friend of mine, Clara and the TU Choir. I’ve created an arrangement for four voices and am looking forward to sing it soon.

System of a Down – Roulette (for SATB choir)

Continuous Integration for Mobile Apps

Cloud CI-Provider (incomplete)

More CI-Provider (incomplete)

Tools to improve automation of build, deployment, crash-reporting, beta-testing, etc.

Tools to improve your Android development (e.g. testing, dependency injection)

More

Implementing an Offline Maps Engine on Android

Recently, we successfully finished the prototype phase on a project with the goal of developing a map tool similar to Google Maps for the Android platform. The initial use-case for the prototype was the following: Their employees regularly walk through remote regions with a map that contains location-specific information, observe the area and take notes that are relevant for their business goal. However, these areas often lack mobile internet, therefore an online solution like Google Maps was no option. We took up the challenge to find the best solution for our customer and within a few weeks built a prototype that solved two major technical challenges: How to integrate custom map-data into an Android app and how to make the app offline-usable.

Read the full article in the Zühlke Blog where it has been published originally.

Automated testing of Android Applications

How to test your Android app as automatic as possible? It’s a non-trivial question. In this article (written in German), I try to answer this question and other questions like: “How to mock classes in Java?” or “How to bring the application into a specific state?”. And last but not least, how to create UI-tests that reflect typical usage scenarios?

You can read the full article in the Zühlke Blog where it has been originally published.