Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/hotchemi/awesome-android-testing

A curated list of awesome android testing libraries.
https://github.com/hotchemi/awesome-android-testing

List: awesome-android-testing

Last synced: 27 days ago
JSON representation

A curated list of awesome android testing libraries.

Awesome Lists containing this project

README

        

# List of Android Testing Libraries

A curated list of awesome android testing libraries.

Of course it sometimes includes google's official one.

## Unit Test

### Framework

- [JUnit](https://github.com/junit-team/junit)
- [AndroidJUnitRunner](https://developer.android.com/tools/testing-support-library/index.html#AndroidJUnitRunner)
- [Robolectric](https://github.com/robolectric/robolectric)
- [RoboSpock](https://github.com/robospock/RoboSpock)
- [Spek](https://github.com/JetBrains/spek) (Kotlin)
- [Kotest](https://kotest.io/) (Kotlin)

### Library

- [Burst](https://github.com/square/burst)
- [Kluent](https://github.com/MarkusAmshove/Kluent)
- [Expekt](https://github.com/winterbe/expekt)

## Integration Test

### Framework

- [Espresso](https://developer.android.com/tools/testing-support-library/index.html#Espresso)
- [Robotium](https://github.com/RobotiumTech/robotium)

### Library

- [rxpresso](https://github.com/novoda/rxpresso)
- [Spoon](https://github.com/square/spoon)
- [spoon-gradle-plugin (Gradle plugin 2.x)](https://github.com/stanfy/spoon-gradle-plugin)
- [spoon-gradle-plugin (Gradle plugin 3.x)](https://github.com/jaredsburrows/gradle-spoon-plugin)
- [test-butler](https://github.com/linkedin/test-butler)
- [composer](https://github.com/gojuno/composer)
- [Barista](https://github.com/SchibstedSpain/Barista)

## E2E Test

### Framework

- [UI Automator](https://developer.android.com/tools/testing-support-library/index.html#UIAutomator)
- [Calabash-android](https://github.com/calabash/calabash-android)
- [Cucumber](https://github.com/cucumber/cucumber)
- [Appium](https://github.com/appium/appium)
- [Appium Clients](https://github.com/appium/appium/blob/master/docs/en/about-appium/appium-clients.md)
- [Selendroid](https://github.com/selendroid/selendroid)
- [eggPlant](http://www.testplant.com/eggplant/testing-tools/eggplant-mobile-eggon/)
- [Magneto](https://github.com/EverythingMe/magneto)
- [Airtest](https://github.com/AirtestProject/Airtest)
- [Poco](https://github.com/AirtestProject/Poco)

### Helper
- [DroidTestHelper](https://github.com/KazuCocoa/DroidTestHelper)

## Recorder

- [appium-desktop](https://github.com/appium/appium-desktop)
- [Espresso Test Recorder](https://developer.android.com/studio/test/espresso-test-recorder)

## Assertion

- [AssertJ](http://joel-costigliola.github.io/assertj/)
- [android-power-assert-plugin](https://github.com/gfx/android-power-assert-plugin)
- [truth](https://github.com/google/truth)

## Mock

- [mockito](https://github.com/mockito/mockito)
- [mockito](https://github.com/nhaarman/mockito-kotlin) (Kotlin)
- [powermock](https://github.com/jayway/powermock)
- [easymock](https://github.com/easymock/easymock)
- [mockk](https://github.com/mockk/mockk)

### Mock Server

- [okhttp/mockwebserver](https://github.com/square/okhttp/tree/master/mockwebserver)
- [WireMock](http://wiremock.org/)
- [MockServer](http://www.mock-server.com/)

## Monkey Test

- [monkey](https://developer.android.com/tools/help/monkey.html)
- [Cloud Test Lab](https://developers.google.com/cloud-test-lab/)
- [AWS Device Farm](https://aws.amazon.com/jp/device-farm/)

## TaaS
TaaS stands for Test as a Service. Usually, TaaS provides us test platform like running test cases and its report.
Some services are interesting since they don't provide only **running tests on their device farm**

- [AWS Device Farm](https://aws.amazon.com/jp/device-farm/)
- [SauceLabs](https://saucelabs.com/)
- [Testdroid](http://testdroid.com/)
- [Scirocco Cloud](http://www.scirocco-cloud.com/ja/price.html)
- [Remote TestKit](https://appkitbox.com/)
- [App Center](https://appcenter.ms)
- [Kobiton](https://kobiton.com)
- [Mobilebox](http://mobileboxlab.com/en/)
- [HeadSpin](https://www.headspin.io)
- [test.ai](http://test.ai)
- [Magic Pod](https://magic-pod.com/en/)
- [Firebase Test Lab](https://firebase.google.com/docs/test-lab/)

## IDE
- [Katalon](https://www.katalon.com)
- [Appium Studio](https://experitest.com/appium-studio/)

## Others

- [calculon](https://github.com/mttkay/calculon)
- [compile-testing](https://github.com/google/compile-testing)
- [screenshot-tests-for-android](https://github.com/facebook/screenshot-tests-for-android)
- [Mobile-Security-Framework-MobSF](https://github.com/ajinabraham/Mobile-Security-Framework-MobSF)
- [OpenSTF](https://github.com/openstf) (2.x support API to control devices remotely.)
- [Appium Java REPL](https://mobileboxlab.github.io/appium-java-repl/index.html)

## Documents

- [Testing](http://developer.android.com/tools/testing/index.html)
- [Best Practices for Testing](https://developer.android.com/training/testing.html)
- [Android Testing Tools](https://developer.android.com/tools/testing/testing-tools.html)
- [Testing Display Performance](https://developer.android.com/preview/testing/performance.html)

## Sample

- [android-testing](https://github.com/googlesamples/android-testing)
- [android-testing-templates](https://github.com/googlesamples/android-testing-templates)