원클릭으로
원클릭으로
| name | Verify Local Changes |
| description | Verifies local Java SDK changes. |
This skill documents how to verify local code changes for the Java Firestore SDK. This should be run every time you complete a fix or feature and are prepared to push a pull request.
Ensure you have Maven installed and are in the java-firestore directory before running commands.
Run the formatter to ensure formatting checks pass:
mvn com.spotify.fmt:fmt-maven-plugin:format
mvn test -Dtest=MyUnitTest#testMethod
mvn test -Dtest=MyUnitTest
ITBaseTest.java)When running integration tests, configure your execution using properties or environment variables:
FIRESTORE_EDITION:
standard (Default)enterpriseenterprise editions, while standard Queries run on both.FIRESTORE_DATABASE_ID:
enterprise). Adjust this flag if pointing to specific instances.FIRESTORE_TARGET_BACKEND:
PROD (Default)QA (points to standard sandboxes)NIGHTLY (points to test-firestore.sandbox.googleapis.com:443)EMULATOR (points to localhost:8080)IT).mvn verify -Penable-integration-tests -DFIRESTORE_EDITION=enterprise -DFIRESTORE_DATABASE_ID=enterprise -Dtest=ITTest#testMethod -Dclirr.skip=true -Denforcer.skip=true -fae
mvn verify -Penable-integration-tests -DFIRESTORE_EDITION=enterprise -DFIRESTORE_DATABASE_ID=enterprise -Dtest=ITTest -Dclirr.skip=true -Denforcer.skip=true -fae
Run the full integration regression suite once you are confident subsets pass:
mvn verify -Penable-integration-tests -DFIRESTORE_EDITION=enterprise -DFIRESTORE_DATABASE_ID=enterprise -Dclirr.skip=true -Denforcer.skip=true -fae
[!TIP] Use
-Dclirr.skip=true -Denforcer.skip=trueto speed up iterations where appropriate without leaking compliance checks.
If you run into issues executing tests with the commands above, consult the Kokoro configuration files as the ultimate source of truth:
.kokoro/presubmit/integration.cfg (or integration-named-db.cfg).kokoro/nightly/integration.cfg (or integration-named-db.cfg).kokoro/build.shThese files define the exact environment variables (e.g., specific endpoints or endpoints overrides) the CI server uses!