diff --git a/Documentation/dev-buck.txt b/Documentation/dev-buck.txt index 19857486e6..4108b7aaf1 100644 --- a/Documentation/dev-buck.txt +++ b/Documentation/dev-buck.txt @@ -318,11 +318,10 @@ The following groups of tests are currently supported: * ssh * slow -To run a specific test, e.g. the acceptance test -`com.google.gerrit.acceptance.git.HttpPushForReviewIT`: +To run a specific test group, e.g. the rest-account test group: ---- - buck test //gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/git:HttpPushForReviewIT + buck test //gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/account:rest-account ---- To create test coverage report: @@ -605,24 +604,30 @@ Test execution results are cached by Buck. If a test that was already run needs to be repeated, the unit test cache for that test must be removed first: ---- - rm -rf buck-out/bin/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/group/.AddRemoveGroupMembersIT/ + rm -rf buck-out/bin/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/account/.rest-account/ ---- After clearing the cache, the test can be run again: ---- - buck test //gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/group:AddRemoveGroupMembersIT - TESTING //gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/group:AddRemoveGroupMembersIT - PASS 14,9s 8 Passed 0 Failed com.google.gerrit.acceptance.rest.group.AddRemoveGroupMembersIT + buck test //gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/account:rest-account + [-] TESTING...FINISHED 12,3s (12 PASS/0 FAIL) + RESULTS FOR //gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/account:rest-account + PASS 970ms 2 Passed 0 Skipped 0 Failed com.google.gerrit.acceptance.rest.account.CapabilitiesIT + PASS 999ms 1 Passed 0 Skipped 0 Failed com.google.gerrit.acceptance.rest.account.EditPreferencesIT + PASS 1,2s 1 Passed 0 Skipped 0 Failed com.google.gerrit.acceptance.rest.account.GetAccountDetailIT + PASS 951ms 2 Passed 0 Skipped 0 Failed com.google.gerrit.acceptance.rest.account.GetAccountIT + PASS 6,4s 2 Passed 0 Skipped 0 Failed com.google.gerrit.acceptance.rest.account.GetDiffPreferencesIT + PASS 1,2s 4 Passed 0 Skipped 0 Failed com.google.gerrit.acceptance.rest.account.PutUsernameIT TESTS PASSED ---- An alternative approach is to use Buck's `--filters` (`-f`) option: ---- - buck test -f 'com.google.gerrit.acceptance.rest.change.SubmitByMergeAlwaysIT' - TESTING SELECTED TESTS - PASS 14,5s 6 Passed 0 Failed com.google.gerrit.acceptance.rest.change.SubmitByMergeAlwaysIT + buck test -f //gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/account:rest-account + RESULTS FOR SELECTED TESTS + PASS <100ms 4 Passed 0 Skipped 0 Failed //tools:util_test TESTS PASSED ---- diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/accounts/BUCK b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/accounts/BUCK index 1152d88d26..814dcf4e60 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/accounts/BUCK +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/accounts/BUCK @@ -1,6 +1,7 @@ include_defs('//gerrit-acceptance-tests/tests.defs') acceptance_tests( + group = 'api-account', srcs = glob(['*IT.java']), labels = ['api'], ) diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/change/BUCK b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/change/BUCK index 1152d88d26..5db2054101 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/change/BUCK +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/change/BUCK @@ -1,6 +1,7 @@ include_defs('//gerrit-acceptance-tests/tests.defs') acceptance_tests( + group = 'api-change', srcs = glob(['*IT.java']), labels = ['api'], ) diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/config/BUCK b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/config/BUCK index 1152d88d26..4918a9567d 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/config/BUCK +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/config/BUCK @@ -1,6 +1,7 @@ include_defs('//gerrit-acceptance-tests/tests.defs') acceptance_tests( + group = 'api-config', srcs = glob(['*IT.java']), labels = ['api'], ) diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/group/BUCK b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/group/BUCK index 332459aa2e..06be8ee0c0 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/group/BUCK +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/group/BUCK @@ -1,12 +1,13 @@ include_defs('//gerrit-acceptance-tests/tests.defs') acceptance_tests( + group = 'api-group', srcs = glob(['*IT.java']), deps = [ ':util', '//gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/account:util', ], - labels = ['rest'] + labels = ['api'] ) java_library( diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/project/BUCK b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/project/BUCK index 1152d88d26..9dab9f8d76 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/project/BUCK +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/project/BUCK @@ -1,6 +1,7 @@ include_defs('//gerrit-acceptance-tests/tests.defs') acceptance_tests( + group = 'api-project', srcs = glob(['*IT.java']), labels = ['api'], ) diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/revision/BUCK b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/revision/BUCK index 1152d88d26..c9167555fb 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/revision/BUCK +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/revision/BUCK @@ -1,6 +1,7 @@ include_defs('//gerrit-acceptance-tests/tests.defs') acceptance_tests( + group = 'api-revision', srcs = glob(['*IT.java']), labels = ['api'], ) diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/edit/BUCK b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/edit/BUCK index be6fcdc2bb..c3274db667 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/edit/BUCK +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/edit/BUCK @@ -1,10 +1,11 @@ include_defs('//gerrit-acceptance-tests/tests.defs') acceptance_tests( + group = 'edit', srcs = ['ChangeEditIT.java'], - labels = ['edit'], deps = [ '//lib/commons:codec', '//lib/joda:joda-time', ], + labels = ['edit'], ) diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/git/BUCK b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/git/BUCK index 6caa0f2b33..f6796a54cb 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/git/BUCK +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/git/BUCK @@ -1,21 +1,12 @@ include_defs('//gerrit-acceptance-tests/tests.defs') acceptance_tests( - srcs = [ - 'DraftChangeBlockedIT.java', - 'ForcePushIT.java', - 'SubmitOnPushIT.java', - 'SubmoduleSubscriptionsWholeTopicMergeIT.java', - 'SubmoduleSubscriptionsIT.java', - 'VisibleRefFilterIT.java', + group = 'git', + srcs = glob(['*IT.java']), + deps = [ + ':submodule_util', + ':push_for_review', ], - deps = [':submodule_util'], - labels = ['git'], -) - -acceptance_tests( - srcs = ['HttpPushForReviewIT.java', 'SshPushForReviewIT.java'], - deps = [':push_for_review'], labels = ['git'], ) diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/pgm/BUCK b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/pgm/BUCK index 00b53f9205..ff167ac10a 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/pgm/BUCK +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/pgm/BUCK @@ -1,7 +1,8 @@ include_defs('//gerrit-acceptance-tests/tests.defs') acceptance_tests( + group = 'pgm', srcs = glob(['*IT.java']), - labels = ['pgm'], source_under_test = ['//gerrit-pgm:pgm'], + labels = ['pgm'], ) diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/account/BUCK b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/account/BUCK index f081adab8e..b7c181930b 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/account/BUCK +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/account/BUCK @@ -1,6 +1,7 @@ include_defs('//gerrit-acceptance-tests/tests.defs') acceptance_tests( + group = 'rest-account', srcs = glob(['*IT.java']), deps = [':util'], labels = ['rest'] diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/change/BUCK b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/change/BUCK index f42a1349ad..1a8e151982 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/change/BUCK +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/change/BUCK @@ -5,10 +5,11 @@ SUBMIT_UTIL_SRCS = [ 'AbstractSubmitByMerge.java', ] -SUBMIT_TESTS = glob(['Submit*IT.java'], excludes = SUBMIT_UTIL_SRCS) -OTHER_TESTS = glob(['*IT.java'], excludes = SUBMIT_TESTS + SUBMIT_UTIL_SRCS) +SUBMIT_TESTS = glob(['Submit*IT.java']) +OTHER_TESTS = glob(['*IT.java'], excludes = SUBMIT_TESTS) acceptance_tests( + group = 'rest-change-other', srcs = OTHER_TESTS, deps = [ ':submit_util', @@ -16,8 +17,9 @@ acceptance_tests( ], labels = ['rest'], ) - + acceptance_tests( + group = 'rest-change-submit', srcs = SUBMIT_TESTS, deps = [ ':submit_util', diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/config/BUCK b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/config/BUCK index c89da306e2..0802e7c72b 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/config/BUCK +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/config/BUCK @@ -1,6 +1,7 @@ include_defs('//gerrit-acceptance-tests/tests.defs') acceptance_tests( + group = 'rest-config', srcs = glob(['*IT.java']), labels = ['rest'] ) diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/group/BUCK b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/group/BUCK index ffdfa8be5a..d991417b77 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/group/BUCK +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/group/BUCK @@ -1,6 +1,7 @@ include_defs('//gerrit-acceptance-tests/tests.defs') acceptance_tests( + group = 'rest-group', srcs = glob(['*IT.java']), labels = ['rest'] ) diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/project/BUCK b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/project/BUCK index 50e6b843fc..c1618fbb4f 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/project/BUCK +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/project/BUCK @@ -1,6 +1,7 @@ include_defs('//gerrit-acceptance-tests/tests.defs') acceptance_tests( + group = 'rest-project', srcs = glob(['*IT.java']), deps = [ ':branch', diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/server/change/BUCK b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/server/change/BUCK index fce853b7c2..94e69da4b9 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/server/change/BUCK +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/server/change/BUCK @@ -1,6 +1,7 @@ include_defs('//gerrit-acceptance-tests/tests.defs') acceptance_tests( + group = 'server-change', srcs = glob(['*IT.java']), labels = ['server'], ) diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/server/project/BUCK b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/server/project/BUCK index 2ec6f7a67f..ad7d597afa 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/server/project/BUCK +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/server/project/BUCK @@ -3,11 +3,13 @@ include_defs('//gerrit-acceptance-tests/tests.defs') FLAKY_TEST_CASES=['ProjectWatchIT.java'] acceptance_tests( + group = 'server-project', srcs = glob(['*IT.java'], excludes=FLAKY_TEST_CASES), labels = ['server'], ) acceptance_tests( + group = 'server-project-flaky', srcs = FLAKY_TEST_CASES, labels = ['server', 'flaky'], ) diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/ssh/BUCK b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/ssh/BUCK index d067b34ac7..0729b68955 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/ssh/BUCK +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/ssh/BUCK @@ -1,6 +1,7 @@ include_defs('//gerrit-acceptance-tests/tests.defs') acceptance_tests( + group = 'ssh', srcs = glob(['*IT.java']), deps = ['//lib/commons:compress'], labels = ['ssh'], diff --git a/gerrit-acceptance-tests/tests.defs b/gerrit-acceptance-tests/tests.defs index 7bd2430679..940b1cc910 100644 --- a/gerrit-acceptance-tests/tests.defs +++ b/gerrit-acceptance-tests/tests.defs @@ -5,6 +5,7 @@ BOUNCYCASTLE = [ ] def acceptance_tests( + group, srcs, deps = [], labels = [], @@ -16,19 +17,18 @@ def acceptance_tests( if path.exists('/dev/urandom'): vm_args = vm_args + ['-Djava.security.egd=file:/dev/./urandom'] - for j in srcs: - java_test( - name = j[:-len('.java')], - srcs = [j], - deps = ['//gerrit-acceptance-tests:lib'] + deps, - source_under_test = [ - '//gerrit-httpd:httpd', - '//gerrit-sshd:sshd', - '//gerrit-server:server', - ] + source_under_test, - labels = labels + [ - 'acceptance', - 'slow', - ], - vm_args = vm_args, - ) + java_test( + name = group, + srcs = srcs, + deps = ['//gerrit-acceptance-tests:lib'] + deps, + source_under_test = [ + '//gerrit-httpd:httpd', + '//gerrit-sshd:sshd', + '//gerrit-server:server', + ] + source_under_test, + labels = labels + [ + 'acceptance', + 'slow', + ], + vm_args = vm_args, + )