Skip to content

EssidM/vogella-android-testing

Repository files navigation

Android Sample Application for Temperature Conversion

This a sample application from Vogella used for Android Unit and Instrumental Tests following this Android Testing tutorial

  • Base branch is the basic application (without test).
  • Master branch should contain full tested app (without test).
Note: for each section on this tutorial we will create a branch apart.

Android Unit Test Exercise

Starting from base application , this tutorial is an exercise of android unit testing that will tests ConverterUtil class by testing conversion method

We will create a class app/src/test/util/convertFahrenheitToCelsius that contains 2 methods:

  • testConvertFahrenheitToCelsius: tests conversion from Fahrenheit to Celsuis
  • testConvertCelsiusToFahrenheit: tests conversion from Celsuis to Fahrenheit

this is what the class should look like:

package com.leadit.vogellaandroidtesting.util;

import org.junit.Test;

import static junit.framework.Assert.assertEquals;

/**
 * ConverterUtil unit test class
 * tests conversion methods
 *
 * @author Mohamed Essid on 07/02/2017.
 */

public class ConverterUtilTest {

    /**
     * tests {@link ConverterUtil#convertFahrenheitToCelsius(float)} method*
     */
    @Test
    public void testConversionFahrenheitToCelsius() {

        float actual = ConverterUtil.convertFahrenheitToCelsius(212);
        float expected = 100;

        assertEquals("Conversion from celsius to fahrenheit failed", expected,
                actual, 0.001);
    }

    /**
     * tests {@link ConverterUtil#convertCelsiusToFahrenheit(float)} (float)} method
     **/
    @Test
    public void testConvertCelsiusToFahrenheit() {

        float actual = ConverterUtil.convertCelsiusToFahrenheit(100);
        float expected = 212;

        assertEquals("Conversion Celsius to Fahrenheit failed" , expected, actual, 0.001);
    }
}

Now just run this class. Done :)