Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

System.out.println in android test

Tags:

java

android

I have created simple test in Android Studio. It just prints hello from test and compares 1 with 5

package com.example.maks.firstapp.test;

import android.test.InstrumentationTestCase;

public class ExampleTest extends InstrumentationTestCase {
    public void test() throws Exception {
        System.out.println("hello from test");

        final int expected = 1;
        final int reality = 5;
        assertEquals(expected, reality);
    }
}

I run it but don't see hello from test anywhere.

The output:

Running tests
Test running started
junit.framework.AssertionFailedError: expected:<1> but was:<5>
at com.example.maks.firstapp.test.ExampleTest.test(ExampleTest.java:15)
at java.lang.reflect.Method.invokeNative(Native Method)
at android.test.InstrumentationTestCase.runMethod(InstrumentationTestCase.java:214)
at android.test.InstrumentationTestCase.runTest(InstrumentationTestCase.java:199)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:190)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:175)
at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:555)
at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1661)

Finish

Where to System.out.println does actually print

Update

I tried to use Log.d("MyApp", "hello from test"); but result is the same.

I tried to search in different sub-windows by hello from test but nothing was found.

Update 2

I changed code to use e.Log:

package com.example.maks.firstapp.test;

import android.test.InstrumentationTestCase;
import android.util.Log;

public class ExampleTest extends InstrumentationTestCase {
    public void test() throws Exception {
        Log.e("MyApp", "I am here");

        final int expected = 1;
        final int reality = 5;
        assertEquals(expected, reality);
    }
}

Screenshots:

Test is done. Running test

But logcat is empty. empty logcat

like image 854
Maxim Yefremov Avatar asked May 03 '15 02:05

Maxim Yefremov


1 Answers

Use Log to print out strings and check them in your logcat.

There are different variants you can base on your need like Log.d, Log.i, Log.e, etc which are for different purposes like debug, info, error, etc.

And make sure the proper 'Log level' for your logcat is selected. If it's on Error you won't see the output for Log.d.

Further read

enter image description hereenter image description here

like image 146
Samurai Avatar answered Oct 17 '22 09:10

Samurai