Skip to content

Commit ae79644

Browse files
committed
Linked all the filenames to actual files.
1 parent cca5354 commit ae79644

File tree

1 file changed

+26
-13
lines changed

1 file changed

+26
-13
lines changed

README.md

Lines changed: 26 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -42,25 +42,25 @@ Complete reference for Android Testing with examples.
4242
A unit test generally exercises the functionality of the smallest possible unit of code (which could be a method, class, or component) in a repeatable way.
4343

4444
Tools that are used to do this testing:
45-
* JUnit – normal test assertions.
46-
* Mockito – mocking out other classes that are not under test.
47-
* PowerMock – mocking out static classes such as Android Environment class etc.
45+
* [JUnit](http://junit.org/junit4/) – normal test assertions.
46+
* [Mockito](http://mockito.org/) – mocking out other classes that are not under test.
47+
* [PowerMock](https://github.com/jayway/powermock) – mocking out static classes such as Android Environment class etc.
4848

4949
### Instrumented tests
5050

5151
A UI Test or Instrumentation Test mocks typical user interactions with your app. Clicking on buttons, typing in text are some of the things UI Tests can complete.
5252

53-
* Espresso – Used for testing within your app, selecting items, making sure something is visible.
54-
* UIAutomator – Used for testing interaction between different apps.
53+
* [Espresso](https://google.github.io/android-testing-support-library/docs/espresso/) – Used for testing within your app, selecting items, making sure something is visible.
54+
* [UIAutomator](https://developer.android.com/training/testing/ui-testing/uiautomator-testing.html) – Used for testing interaction between different apps.
5555

56-
There are other tools that are available for this kind of testing such as Robotium, Appium, Calabash, Robolectric.
56+
There are other tools that are available for this kind of testing such as [Robotium](http://robotium.com/), [Appium](http://appium.io/), [Calabash](http://calaba.sh/), [Robolectric](http://robolectric.org/).
5757

5858
## Local Tests
5959

6060
### JUnit basics
6161

6262
```java
63-
//Calculator.java
63+
// [Calculator.java](https://github.com/ravidsrk/android-testing-guide/blob/master/SampleApp/app/src/main/java/in/ravidsrk/sample/Calculator.java)
6464
public class Calculator {
6565

6666
public int add(int op1, int op2) {
@@ -77,7 +77,7 @@ public class Calculator {
7777
}
7878
}
7979

80-
// CalculatorTest.java
80+
// [CalculatorTest.java](https://github.com/ravidsrk/android-testing-guide/blob/master/SampleApp/app/src/test/java/in/ravidsrk/sample/CalculatorTest.java)
8181
public class CalculatorTest {
8282

8383
private Calculator calculator;
@@ -130,6 +130,7 @@ public class CalculatorTest {
130130
### Beyond JUnit basics
131131

132132
```java
133+
// [CalculatorTest.java](https://github.com/ravidsrk/android-testing-guide/blob/master/SampleApp/app/src/test/java/in/ravidsrk/sample/CalculatorTest.java#L62)
133134
@Ignore
134135
@Test(expected = java.lang.ArithmeticException.class)
135136
public void testDivWithZeroDivisor() {
@@ -144,6 +145,7 @@ public void testDivWithZeroDivisor() {
144145
### Hamcrest
145146

146147
```java
148+
// [HamcrestTest.java](https://github.com/ravidsrk/android-testing-guide/blob/master/SampleApp/app/src/test/java/in/ravidsrk/sample/HamcrestTest.java)
147149
public class HamcrestTest {
148150

149151
@Test
@@ -200,7 +202,7 @@ public class HamcrestTest {
200202
### Rules
201203

202204
```java
203-
// CalculatorWithTestName.java
205+
// [CalculatorWithTestName.java](https://github.com/ravidsrk/android-testing-guide/blob/master/SampleApp/app/src/test/java/in/ravidsrk/sample/CalculatorWithTestName.java)
204206
public class CalculatorWithTestName {
205207

206208
@Rule
@@ -300,7 +302,7 @@ public class SampleServiceTestRule extends ServiceTestRule {
300302
### Android instrumented tests
301303
#### Testing Android Activity
302304
```java
303-
// MainActivityTest.java
305+
// [MainActivityTest.java](https://github.com/ravidsrk/android-testing-guide/blob/master/SampleApp/app/src/androidTest/java/in/ravidsrk/sample/MainActivityTest.java)
304306
@RunWith(AndroidJUnit4.class)
305307
public class MainActivityTest {
306308

@@ -323,6 +325,7 @@ public class MainActivityTest {
323325
#### Testing Android Service
324326

325327
```java
328+
// [SampleServiceTest](https://github.com/ravidsrk/android-testing-guide/blob/master/SampleApp/app/src/androidTest/java/in/ravidsrk/sample/SampleServiceTest.java)
326329
@RunWith(AndroidJUnit4.class)
327330
public class SampleServiceTest {
328331

@@ -347,6 +350,7 @@ public class SampleServiceTest {
347350

348351
### Test filtering
349352
```java
353+
// [MainActivityTest.java](https://github.com/ravidsrk/android-testing-guide/blob/master/SampleApp/app/src/androidTest/java/in/ravidsrk/sample/MainActivityTest.java#L61)
350354
@Test
351355
@RequiresDevice
352356
public void testRequiresDevice() {
@@ -390,6 +394,7 @@ public void testLargeTest() {
390394

391395
### Espresso
392396
```java
397+
// [MainActivityTest.java](https://github.com/ravidsrk/android-testing-guide/blob/master/SampleApp/app/src/androidTest/java/in/ravidsrk/sample/MainActivityTest.java#L134)
393398
@Test
394399
public void testEspresso() {
395400
ViewInteraction interaction =
@@ -416,7 +421,7 @@ public void testEspressoSimplified() {
416421
### Robolectric
417422

418423
```java
419-
// MainActivityRoboelectricTest.java
424+
// [MainActivityRoboelectricTest.java](https://github.com/ravidsrk/android-testing-guide/blob/master/SampleApp/app/src/test/java/in/ravidsrk/sample/MainActivityRoboelectricTest.java)
420425
@RunWith(RobolectricGradleTestRunner.class)
421426
@Config(constants = BuildConfig.class)
422427
public class MainActivityRoboelectricTest {
@@ -441,7 +446,7 @@ public class MainActivityRoboelectricTest {
441446
### Robotium
442447

443448
```java
444-
// MainActivityRobotiumTest.java
449+
// [MainActivityRobotiumTest.java](https://github.com/ravidsrk/android-testing-guide/blob/master/SampleApp/app/src/androidTest/java/in/ravidsrk/sample/MainActivityRobotiumTest.java)
445450
public class MainActivityRobotiumTest {
446451
private Solo solo;
447452

@@ -470,7 +475,7 @@ public class MainActivityRobotiumTest {
470475
```
471476

472477
```java
473-
// MainActivityRobotiumTestRule.java
478+
// [MainActivityRobotiumTestRule.java](https://github.com/ravidsrk/android-testing-guide/blob/master/SampleApp/app/src/androidTest/java/in/ravidsrk/sample/MainActivityRobotiumTestRule.java)
474479
@Beta
475480
public class MainActivityRobotiumTestRule<T extends Activity> extends UiThreadTestRule {
476481

@@ -701,6 +706,13 @@ public class MainActivityRobotiumTestRule<T extends Activity> extends UiThreadTe
701706
### UI testing and UI Automator
702707

703708
```java
709+
// [MainActivityTest](https://github.com/ravidsrk/android-testing-guide/blob/master/SampleApp/app/src/androidTest/java/in/ravidsrk/sample/MainActivityTest.java#L101)
710+
711+
@Test
712+
public void testPressBackButton() {
713+
UiDevice.getInstance(InstrumentationRegistry.getInstrumentation()).pressBack();
714+
}
715+
704716
@Test
705717
@Ignore
706718
public void testUiDevice() throws RemoteException {
@@ -733,6 +745,7 @@ public void testUiAutomatorAPI() throws UiObjectNotFoundException, InterruptedEx
733745

734746
### MonkeyRunner
735747
```python
748+
// [sampletest.py](https://github.com/ravidsrk/android-testing-guide/blob/master/SampleApp/sampletest.py)
736749
# Imports the monkeyrunner modules
737750
from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice, MonkeyImage
738751

0 commit comments

Comments
 (0)