azure/run-tests
Run project tests using Maven (mvn). Use when the user asks to run tests.
npx skills add https://github.com/Azure/azure-sdk-for-java --skill run-tests
Use Maven (mvn) to run tests. Confirm you are in a directory with a pom.xml (project root or module root).
mvn test
mvn -pl <module> -am test
mvn -Dtest=MyTest test
mvn -Dtest=MyTest#myMethod test
If the user asks for live/record/playback, set the env var for the command:
$env:AZURE_TEST_MODE = "LIVE"
mvn test
Tests often require environment variables with connection strings, keys, or other secrets. If another skill or tool for loading secrets or work resources is available, consult the user and use it. Otherwise, ask the user to provide the required environment variables manually. To discover which variables are needed, search for classes named *ClientTestBase in the test sources — these typically define the expected environment variable names.
pom.xml). If not, ask for the correct path.mvn "-Dtest=<TestClass>" test. Only add flags if something fails.-Dtest=<pattern>.-pl <module> -am test.Apply these only if the simple mvn test command fails with the specific error described:
-Dbuildhelper.addtestsource.skip=true -Dbuildhelper.addtestresource.skip=trueokio module issues): add -Dsurefire.useModulePath=false-Denforcer.skip=true -Dcodesnippet.skip=true -Dcheckstyle.skip=true$env:AZURE_TEST_HTTP_CLIENTS = "okhttp"SSLHandshakeException, unable to find valid certification path to requested target): the JVM's trust store is missing the corporate root CA. On Windows, add -Djavax.net.ssl.trustStoreType=WINDOWS-ROOT to use the Windows certificate store. On Linux/macOS, the corporate root CA must be imported into the JVM trust store (or configure a custom one via -Djavax.net.ssl.trustStore / -Djavax.net.ssl.trustStorePassword). This is common on corporate networks with proxy/firewall TLS interception.Do NOT preemptively add all these flags. Start simple and escalate only on failure.
Take azure/run-tests from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.