The Android developer documentation is a good source to follow. http://developer.android.com/training/testing/start/index.html
Local unit tests are tests run on your local machine without needing access to the Android framework or an Android device. So we'll start with that kind.
Another kind is the Instrumented tests that run on an Android device or emulator, because they have access to an Android device, they can run as proper Android run tests (As if someone is actually interacting with the device), along with component testing.
I've also found out since then, that since version 1.2 of Android Studio, JUnit testing has become much much easier. Earlier versions required some manual editing and adding of entries to build files.
For a more in depth look, Big Nerd Ranch had their own blog post about it. https://www.bignerdranch.com/blog/triumph-android-studio-1-2-sneaks-in-full-testing-support/ (Be sure to read the updates at the bottom).
The whole process as described seems kind of backward, as you are kind of going out of your way to make code fail, when it is very easy to 'just make it work' from the beginning then check to see if it fails. Perhaps I misread what others are meaning?
If you are going to write the test first...
According to the 'Uncle Bob's three rules of TDD' http://agileinaflash.blogspot.fr/2009/03/unclebobs-three-rules-of-tdd.html we are writing as little as possible to start with...this might leave some stuff up for interpretation, but for the sake of this test, I'll write as little as possible (and for demonstration purposes).
I want to test a Person object that I want to create eventually, so I create the test in the src/test folder path and set up just enough of a test to show that a function I want will fail (but will then later work).
Note: src/test is for local unit tests, and src/androidTest is for Instrumentation Tests, this is a local unit test (without need of Android stuff, just a vanilla Java class/method).
According to this test that I've written, I'll eventually be making a person object, and testing a method called 'getFullName', which will return "Donovon Heap", if they match, the test works.
But right now the object and method haven't been written yet, so we can't run the test.
Luckily IDE's are great for stubbing in what they think you want. So lets do that.
With Person in the cursor, hit ALT+Enter

In this case since we are creating a class, make the selection.

Make sure you are putting your class in the correct location and package.

And boom, a class is created for you (Or, if you want to, you could write it yourself...whatever floats your boat).
But back in the test, we haven't implemented the getFullName() function yet, you can either use the ALT+Enter popup to create the method for you, or you can write it yourself...If you make it actually work as the test expects, then technically you are breaking the rules (as I read them?)...It seems kind of off putting to me, but it's up to you.
For this case, I'll make it fail anyways.

This will make the test fail, as it's not returning my name, but null, when the test runs, it'll fail.
One thing to check for in Android Studio is make sure the Build Variant is set to Unit Test, if It's set to Android Instrumentation Tests, you'll notice that the project tree changes a bit and toggles the src/androidTest and src/test from a 'selected' state.

Now, if you want to manually run the test, you can right click on the method and select 'Run (method name)'.

And boom, our test fails.

So now lets fix our method to pass the test.
At this point, if they literally mean as little as possible to pass the test (even if it means hard coding it), this might be what they mean.

Now when we run the test, it should work.

Now as we continue on with building code and implementation, we can continue to run this test and make sure Person.getFullName() stays working.
If you are adding a unit test to an already existing method...
If the case may be that you are maintaining code, and want to add a test to a function as written (in this case we will use the above code as what we are going to add a unit test for).
ALT+Enter on the class you want to add a test for and select the 'Create Test' entry.
Make sure you are selecting the methods you want to have generated, and on JUnit 4.
Now all that is left is to write the actual test code. (see above for actual code you'd put in the testGetFullName() block).
Depending on if you are 'sticking to the letter of the law' when following the rules, or bending them by adding 'shortcuts' (I may have by adding "Donovon Heap" as the test resultant depending), the general idea seems to be worthwhile to me. If you get into the habit of writing tests first before actual implementation in general, it makes life later on easier.
You'll think of the debugging process differently to be sure as you're forced to think about what you're going to do, vs what you've already done.
This is also how to run basic Local Unit Tests in Android Studio with a person behind the computer...with a proper build system you would probably run Unit Tests through the command line during builds or source code commits, https://docs.gradle.org/current/userguide/tutorial_gradle_command_line.html
This is also how to run basic Local Unit Tests in Android Studio with a person behind the computer...with a proper build system you would probably run Unit Tests through the command line during builds or source code commits, https://docs.gradle.org/current/userguide/tutorial_gradle_command_line.html
Next Up, C# in Visual Studio.


