android / testing-samples
Unit Size

The distribution of size of units (measured in lines of code).

Intro
  • Unit size measurements show the distribution of size of units of code (methods, functions...).
  • Units are classified in four categories based on their size (lines of code): 1-20 (small units), 20-50 (medium size units), 51-100 (long units), 101+ (very long units).
  • You should aim at keeping units small (< 20 lines). Long units may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
Unit Size Overall
  • There are 145 units with 941 lines of code in units (48.5% of code).
    • 0 very long units (0 lines of code)
    • 0 long units (0 lines of code)
    • 2 medium size units (62 lines of code)
    • 19 small units (257 lines of code)
    • 124 very small units (622 lines of code)
0% | 0% | 6% | 27% | 66%
Legend:
101+
51-100
21-50
11-20
1-10
Unit Size per Extension
101+
51-100
21-50
11-20
1-10
java0% | 0% | 7% | 26% | 66%
kt0% | 0% | 0% | 34% | 65%
Unit Size per Logical Component
primary logical decomposition
101+
51-100
21-50
11-20
1-10
runner/AndroidTestOrchestratorSample0% | 0% | 38% | 0% | 61%
runner/AndroidJunitRunnerSample0% | 0% | 38% | 0% | 61%
ui/espresso0% | 0% | 0% | 28% | 71%
unit/BasicUnitAndroidTest0% | 0% | 0% | 52% | 47%
unit/BasicSample0% | 0% | 0% | 35% | 64%
unit/BasicSample-kotlinApp0% | 0% | 0% | 53% | 46%
ui/uiautomator0% | 0% | 0% | 35% | 64%
integration/ServiceTestRuleSample0% | 0% | 0% | 0% | 100%
Alternative Visuals
Longest Units
Top 20 longest units
Unit# linesMcCabe index# params
private void compute()
in runner/AndroidTestOrchestratorSample/app/src/main/java/com/example/android/testing/androidtestorchestratorsample/CalculatorActivity.java
31 6 1
private void compute()
in runner/AndroidJunitRunnerSample/app/src/main/java/com/example/android/testing/androidjunitrunnersample/CalculatorActivity.java
31 6 1
public void onSaveClick()
in unit/BasicSample/app/src/main/java/com/example/android/testing/unittesting/BasicSample/MainActivity.java
20 3 1
fun onSaveClick()
in unit/BasicSample-kotlinApp/app/src/main/java/com/example/android/testing/unittesting/BasicSample/MainActivity.kt
19 3 1
static void processMessage()
in ui/espresso/IdlingResourceSample/app/src/main/java/com/example/android/testing/espresso/IdlingResourceSample/MessageDelayer.java
18 4 3
static Matcher withHint()
in ui/espresso/CustomMatcherSample/app/src/sharedTest/java/com/example/android/testing/espresso/CustomMatcherSample/HintMatcher.java
15 2 1
private LogHistory()
in unit/BasicUnitAndroidTest/app/src/main/java/com/example/android/testing/unittesting/basicunitandroidtest/LogHistory.java
15 3 1
protected void onCreate()
in ui/espresso/WebBasicSample/app/src/main/java/com/example/android/testing/espresso/web/BasicSample/WebViewActivity.java
14 1 1
protected void onCreate()
in ui/espresso/RecyclerViewSample/app/src/main/java/com/example/android/testing/espresso/RecyclerViewSample/MainActivity.java
13 2 1
protected void onCreate()
in ui/espresso/MultiProcessSample/app/src/main/java/com/example/android/testing/espresso/multiprocesssample/PrivateProcessActivity.java
13 1 1
public static void setCurrentRunningProcess()
in ui/espresso/MultiProcessSample/app/src/main/java/com/example/android/testing/espresso/multiprocesssample/Util.java
13 3 2
public View getView()
in ui/espresso/DataAdapterSample/app/src/main/java/com/example/android/testing/espresso/DataAdapterSample/LongListActivity.java
13 2 3
protected void onCreate()
in unit/BasicUnitAndroidTest/app/src/main/java/com/example/android/testing/unittesting/basicunitandroidtest/MainActivity.java
13 3 1
public void onClick()
in ui/espresso/BasicSample/app/src/main/java/com/example/android/testing/espresso/BasicSample/MainActivity.java
12 3 1
public void onClick()
in ui/espresso/BasicSampleBundled/src/com/example/android/testing/espresso/basicsamplebundled/MainActivity.java
12 3 1
protected void onCreate()
in unit/BasicSample/app/src/main/java/com/example/android/testing/unittesting/BasicSample/MainActivity.java
12 1 1
public void onClick()
in ui/uiautomator/BasicSample/app/src/main/java/com/example/android/testing/uiautomator/BasicSample/MainActivity.java
11 3 1
private static boolean validateText()
in ui/espresso/CustomMatcherSample/app/src/main/java/com/example/android/testing/espresso/CustomMatcherSample/MainActivity.java
11 4 1
public void onCreate()
in ui/espresso/DataAdapterSample/app/src/main/java/com/example/android/testing/espresso/DataAdapterSample/LongListActivity.java
11 1 1
public void writeToParcel()
in unit/BasicUnitAndroidTest/app/src/main/java/com/example/android/testing/unittesting/basicunitandroidtest/LogHistory.java
11 2 2