Skip to content

Repository files navigation

Travis-CI Build Status BuddyBuild Status Bitrise Build Status Download from Bintray License

codecov.io Codacy Badge codebeat badge

Pull requests closed in Issues closed in Average time to resolve an issue Percentage of issues still open

Learning Objectives

  • Simple dependency injection
  • Event-driven program execution
  • State dependence in applications
  • Mapping the model-view-adapter architecture to Android (and the command-line)
  • Android application life cycle management (including rotation and back button)
  • Playing a notification sound in Android
  • Adapter pattern (wrapper, as opposed to the adapter in MVA)
  • Dependency inversion principle (DIP)
  • Automated unit and integration testing with JUnit
  • Testcase Superclass pattern for xUnit testing
  • Automated system testing by interacting with the GUI
  • Automated GUI testing in Android

Setting up the Environment

Check out the project using IntelliJ IDEA - this creates the local.properties file with the required line:

sdk.dir=<root folder of Android Studio's Android SDK installation>

Running the Application (in an emulator or connected Android device)

In IntelliJ: Run > Run app

Running the Tests

Unit tests including out-of-emulator system tests using Robolectric

In IntelliJ IDEA in the Android view under app => java, right-click on edu.luc.etl.cs313 (test), then choose Run Tests in ...

You can also use Gradle in a Terminal window:

$ ./gradlew testDebug

You can view the resulting test reports in HTML by opening this file in your browser:

app/build/reports/tests/testDebugUnitTest/index.html

Android instrumentation tests (in-emulator/device system tests)

In IntelliJ IDEA in the Android view under app => java, right-click on edu.luc.etl.cs313... (androidTest), then choose Run Tests in 'edu.luc.etc...'

You can also use Gradle in a Terminal window:

$ ./gradlew connectedDebugAndroidTest

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

4 watching

Forks

Releases

Packages

Contributors

Languages