# Running tests from the command line It’s pretty simple to run a test project from the command line. Here is an example in Windows: ```bash Unity.exe -runTests -batchmode -projectPath PATH_TO_YOUR_PROJECT -testResults C:\temp\results.xml -testPlatform PS4 ``` For more information, see [Command line arguments](https://docs.unity3d.com/Manual/CommandLineArguments.html). ## Commands ### batchmode Runs Unity in batch mode and ensures no pop-up windows appear to eliminate the need for any human intervention. ### forgetProjectPath Don't save your current **Project** into the Unity launcher/hub history. ### runTest Runs tests in the Project. ### testCategory A semicolon-separated list of test categories to include in the run. If using both `testFilter` and `testCategory`, then tests only run that matches both. ### testFilter A semicolon-separated list of test names to run, or a regular expression pattern to match tests by their full name. ### testPlatform The platform you want to run tests on. Available platforms are **EditMode** and **PlayMode**. > **Note**: If unspecified, tests run in Edit Mode by default. Platform/Type convention is from the [BuildTarget](https://docs.unity3d.com/ScriptReference/BuildTarget.html) enum. Supported platforms are: * StandaloneWindows * StandaloneWindows64 * StandaloneLinux64 * StandaloneOSX * iOS * Android * PS4 * XboxOne ### testResults The path where Unity should save the result file. By default, Unity saves it in the Project’s root folder. ### playerHeartbeatTimeout The time, in seconds, the editor should wait for heartbeats after starting a test run on a player. This defaults to 10 minutes. ### testSettingsFile Path to a *TestSettings.json* file that allows you to set up extra options for your test run. An example of the *TestSettings.json* file could look like this: ```json { "scriptingBackend":2, "Architecture":null, "apiProfile":0 } ``` #### apiProfile The .Net compatibility level. Set to one of the following values: - 1 - .Net 2.0 - 2 - .Net 2.0 Subset - 3 - .Net 4.6 - 5 - .Net micro profile (used by Mono scripting backend if **Stripping Level** is set to **Use micro mscorlib**) - 6 - .Net Standard 2.0 #### appleEnableAutomaticSigning Sets option for automatic signing of Apple devices. #### appleDeveloperTeamID Sets the team ID for the apple developer account. #### architecture Target architecture for Android. Set to one of the following values: * None = 0 * ARMv7 = 1 * ARM64 = 2 * X86 = 4 * All = 4294967295 #### iOSManualProvisioningProfileType Set to one of the following values: * 0 - Automatic * 1 - Development * 2 - Distribution iOSManualProvisioningProfileID #### scriptingBackend Set to one of the following values: - Mono2x = 0 - IL2CPP = 1 - WinRT DotNET = 2 #### useLatestScriptingRuntimeVersion Sets option to always use the latest [Scripting Runtime Version](https://docs.unity3d.com/Manual/ScriptingRuntimeUpgrade.html).