Skip to main content

Custom Properties Generator

Use this generator to choose SHAFT properties, edit their values, and download the matching .properties files.

Save generated files under src/main/resources/properties/ in your test project. SHAFT reads every .properties file in that folder during startup.

Place generated files here:src/main/resources/properties/SHAFT reads every .properties file in this folder.
310 properties shown0 selected

Platform

Used to configure testing behind a proxy. e.g. corporate proxy.

To enable or disable the driver proxy.

To enable or disable the WebDriver BiDi protocol.

For Appium, set the below settings and move to the Mobile tab to continue. For BrowserStack, set the "Target Operating System" below, and the "Automation Name" in the Mobile tab, then configure the "browserStack.properties" file in your project directory.

To enable or disable the JVM proxy.

Cross Browser Mode allows SHAFT to run your test class against Chrome, Firefox, and Safari! You need to have 'Docker Desktop' installed on your machine, and configured to use Linux images. Off -> Your tests will run normally and respect your configuration. Sequential -> Your tests will run on Chrome, Firefox, and Safari in sequence. Parallelized -> Your tests will run on Chrome, Firefox and Safari in parallel. And for each browser they will run in sequence.

The target operating system for test execution.

Web

Base URL for the application under test.

Won't work if autoMaximizeBrowserWindow is enabled.

Won't work if autoMaximizeBrowserWindow is enabled.

This only works for Chrome and Firefox. Allows you to use Selenium Manager to download the latest version from CfT which promises better performance and reliability.

This only works for Chrome, Firefox and Edge.

Enable browser incognito/private mode.

This only works for Chrome and Edge.

This only works for Chrome and Edge.

This only works for Chrome and Edge.

This only works for Chrome and Edge.

This only works for Chrome and Edge.

This only works for Chrome and Edge.

This only works for Chrome and Edge.

Controls when Selenium considers the page loaded.

Controls the document readiness state to wait for.

The target web browser for test execution.

Mobile

You can add any property from the List of Appium Capabilities directly to your .property files or via CLI arguments, just make sure to add mobile as a prefix.

Mobile app setting.

Mobile app Activity setting.

Mobile app Package setting.

Mobile automation Name setting.

Mobile bundle Id setting.

Mobile device Name setting.

Mobile platform Version setting.

Mobile udid setting.

The latest version of the WebDriver executable that is compatible with the target browser. You can get it from here . You can add any property from the List of Appium Capabilities directly to your .property files or via CLI arguments, just make sure to add mobile as a prefix.

Platform Name setting.

API

Enables or disables Swagger/OpenAPI contract validation for API testing.

URL or file path to the OpenAPI schema for validation.

Flags

Attempt to click on element before typing.

Automatically close driver instance after test execution.

Automatically add recommended Chrome options for better stability.

Automatically assert API response status code.

Automatically maximize browser window on launch.

Replaces both deprecated attemptClearBeforeTyping and attemptClearBeforeTypingUsingBackspace flags. native = clear using native Selenium method, backspace = clear by deleting letter by letter, off = no clearing before typing.

Fallback to JavaScript click when WebDriver click fails.

To disable the cache in a browser session.

Disable SSL certificate validation.

Enable true native mode for mobile testing.

When retrying a failed test, capture screenshots and logs to attach as supporting evidence in the Allure report.

Force check that element locator returns only one element.

Force check for element visibility before interactions.

Force check that navigation to URL was successful.

Force check status of remote server before execution.

Force check that text was typed correctly after typing action.

Handle non-select dropdown elements.

0 -> Disabled, 1 -> Without Headless Execution, 2 -> With Headless Execution Enabling maximumPerformanceMode will disable all complementary features to ensure the fastest execution possible with a 400% calculated performance boost.

Respect built-in waits when using native mode.

Maximum number of retry attempts for failed tests.

Mode for scrolling to elements.

It is recommended to leave this feature disabled unless you explicitly want to skip any tests that have the @Issue or @Issues annotation.

Enable telemetry data collection for SHAFT usage analytics.

Validate swipe to element action on mobile.

Reporting

Always log discreetly without detailed output.

Attach a streamed, deduplicated snapshot of the full engine log to the Allure report after test execution without deleting the live log file.

Capture element name in reports for better readability.

Capture WebDriver logs for debugging purposes.

Clean summary reports directory before execution.

Enable debug mode for verbose logging.

Disable all logging output.

Open execution summary report after test execution.

Open Lighthouse performance report during execution.

Allure

When true, accumulates Allure history across runs to enable trend graphs and historical comparison. When false, old results are deleted before the new run. (previously: cleanAllureResultsDirectoryBeforeExecution)

When true, keeps previous Allure HTML report files in the report directory. When false, only the latest run report is retained.

Open the Allure report in the default browser automatically after test execution. (previously: openAllureReportAfterExecution)

Clean the Allure results directory before each test run. Disable when merging results from multiple partial runs.

URL or local path to a custom logo image to replace the default SHAFT logo in the Allure report.

Custom title displayed in the header of the generated Allure report.

true to enforce configured Allure 3 CLI usage; false for legacy PATH-first behavior

Generate a self-contained ZIP archive of the Allure report after test execution. Useful for sharing or archiving in CI pipelines. (previously: generateAllureReportArchive)

Controls the Allure 3 Awesome plugin groupBy hierarchy. Common values include epic,feature,story and package,class,method.

Controls the Allure 3 Awesome plugin open option passed to Allure CLI report generation.

Enables SHAFT-managed Allure 3 native real-time monitoring via allure watch while tests run. Ignored for Allure 2 or when the Allure CLI cannot be resolved.

Controls the Allure 3 Awesome plugin reportLanguage option used by the generated report UI.

Controls the Allure 3 Awesome plugin singleFile option. When true, the report is generated as a self-contained HTML file.

Timeouts

Timeout in seconds for API connection manager.

Timeout in seconds for API connections.

Timeout in seconds for API socket connections.

Timeout in seconds for browser navigation.

Timeout in seconds for database login.

Timeout in seconds for database network operations.

Timeout in seconds for database queries.

Default timeout in seconds for element identification.

Timeout in seconds for Docker commands.

Timeout in seconds for page load.

Timeout in seconds for remote server instance creation.

Timeout in seconds for script execution.

Timeout in seconds for shell session.

Timeout in seconds for remote server to be up.

Especially useful for modern/responsive web apps using React, Vue, Angular, ...etc

Wait for remote server to be up before execution.

Timeout in seconds for wait.until operations.

Visuals

Animated Gif frame Delay setting.

Create animated GIF from screenshots.

Screenshot Params highlight Elements setting.

Screenshot Params highlight Method setting.

Screenshot Params scaling Factor setting.

Screenshot Params screenshot Type setting.

Screenshot Params skipped Elements From Screenshot setting.

Screenshot Params watermark setting.

Screenshot Params watermark Opacity setting.

Screenshot Params when To Take AScreenshot setting.

Video Params record Video setting.

Video Params scope setting.

Visual matching threshold for AI powered element identification.

When to capture page source snapshots.

Jira

Pattern for custom links in Allure reports.

Pattern for TMS (Test Management System) links in Allure.

Default assignee for reported bugs.

Jira authorization credentials (username:token or username:password).

Authorization type for Jira API.

Description for test execution in Jira/Xray.

Name for test execution in Jira/Xray.

Enable Jira integration for test management.

Jira instance URL.

Jira project key.

Automatically report bugs to Jira on test failures.

Path to test results file for Jira/Xray reporting.

Report test case execution results to Jira/Xray.

Cucumber

true to disable ANSI colors; false to keep them enabled

true to enable dry-run mode; false for normal execution

the execution limit as a string, or empty for unlimited

the execution order string

true to fail on undefined/pending steps; false to allow them

true to enable WIP mode; false otherwise

the features path string

the name filter regex, or empty to run all scenarios

the tag filter expression, or empty to run all scenarios

the glue path(s) string

the object factory class name, or empty to use the default

the plugin configuration string

true to suppress the publish banner; false to display it

the snippet type string

Healenium

Heal enabled setting.

Imitate Port setting.

Recovery tries setting.

Score cap setting.

Server Host setting.

Server Port setting.

Healing

Enables optional provider reranking after deterministic eligibility.

Controls when enabled AI reranking runs after deterministic scoring.

Required lead over the next eligible candidate.

Deterministic evidence categories allowed for recovery.

Enables bounded local recovery history.

Maximum retained history entries.

Local recovery history file.

Maximum history age in days.

Minimum deterministic confidence when no trust percentage override is set.

Preferred human-readable trust gate. -1 keeps using healing.minimumConfidence.

Reserved consent gate for reviewed source-patch proposals.

Selects the locator recovery strategy.

Attributes treated as stable test IDs.

Enables optional local visual evidence.

Natural Actions

Allows optional provider-assisted planners after deterministic planning is unavailable.

Restricts which action categories natural actions may execute.

Enables driver.act(...). Disabled plans fail before execution.

Minimum plan trust required before execution.

Selects the natural-action planner.

Paths

Ai Agent Workspace Root setting.

Path to the Allure results output folder.

Applitools API key for visual AI testing integration.

Path to the default properties files folder.

Path to the folder for downloaded files.

Path to the dynamic object repository folder.

Path to the execution summary report folder.

Path to the Extent reports output folder.

Path to the performance (Lighthouse) report output folder.

Path to the custom properties files folder.

Path to the META-INF services folder for custom service implementations.

Path to the test data files folder.

Path to the folder where recorded videos are saved.

Pattern

Allure link issue pattern setting.

Test Data Column Name Prefix setting.

Tinkey

Tinkey keyset Filename setting.

Tinkey kms credential Path setting.

Tinkey kms master Key Uri setting.

Tinkey kms server Type setting.

BrowserStack

Accept insecure SSL certificates.

BrowserStack access key for authentication.

Appium version to use on BrowserStack for mobile testing.

App name for uploading to BrowserStack.

Relative file path to the app for SHAFT/BrowserStack upload workflows.

Use a BrowserStack app URL for a previously uploaded app; takes precedence over remote mobileapp.

Enable BrowserStack Automation (SDK mode). Set to false to use legacy WebDriver URL mode.

Browser version, optional, uses random by default.

Build name to group test runs in the BrowserStack dashboard.

Path to a custom browserstack.yml configuration file. Overrides individual BrowserStack properties.

Use customID to test the latest uploaded version as the above url expires regularly.

Enable debug mode for BrowserStack.

Mobile device name for BrowserStack execution.

Set geolocation for BrowserStack tests.

Enable BrowserStack local testing.

Enable network logs capture on BrowserStack.

In case of Desktop web testing you must also set the targetOperatingSystem, and targetBrowserName.

Number of parallel sessions to run per platform when using the BrowserStack SDK.

Comma-separated list of platforms for cross-browser/cross-device parallel runs (SDK mode).

Mobile platform version for BrowserStack execution.

Project name to group builds in the BrowserStack dashboard.

Selenium version to use on BrowserStack.

BrowserStack username for authentication.

LambdaTest

Accept insecure SSL certificates on LambdaTest.

LambdaTest access key for authentication.

Appium version to use on LambdaTest for mobile testing.

Use appName and appRelativeFilePath to upload a new app file and test it

Enable app profiling during mobile testing.

Use appName and appRelativeFilePath to upload a new app file and test it

Use appUrl to test a previously uploaded app file.

Automatically accept alerts on mobile devices.

Automatically grant app permissions on mobile devices.

Browser version, optional, uses random by default.

Build name to group test runs in the LambdaTest dashboard.

Build name used in the LambdaTest SDK configuration. Use this instead of LambdaTest.build when using the LambdaTest SDK (automate-config.yml).

Enable console log capture on LambdaTest.

Custom app ID for testing a previously uploaded app by its custom identifier.

Enable debug mode (command logs) on LambdaTest.

Mobile device name for LambdaTest execution.

Lambda Test driver version setting.

Geolocation for test execution (e.g. US, IN).

Enable headless browser execution on LambdaTest.

Run tests on real mobile devices (as opposed to emulators/simulators).

Enable network logs capture on LambdaTest.

OS version for desktop browser testing on LambdaTest.

Mobile platform version for LambdaTest execution.

Project name to group builds in the LambdaTest dashboard.

Screen resolution for desktop browser testing (e.g. 1920x1080).

Lambda Test selenium version setting.

Timezone for test execution on LambdaTest (e.g. UTC+5:30).

Enable LambdaTest tunnel for testing locally hosted applications.

Name of the LambdaTest tunnel to use when LambdaTest.tunnel is enabled.

LambdaTest username for authentication.

Enable video recording on LambdaTest.

Enable visual logs (screenshots) on LambdaTest.

Enable W3C WebDriver protocol on LambdaTest.

Performance

Generate a performance report after Lighthouse execution.

Enable Lighthouse performance testing execution.

Port to use for Lighthouse performance testing.

TestNG

Set Data Provider Thread Count setting.

Set Group By Instances setting.

Set Parallel setting.

Set Parallel Mode setting.

Set Preserve Order setting.

ThreadCount is used as-is in case of STATIC mode. Total ThreadCount is automatically calculated for DYNAMIC mode; (Total ThreadCount = Number of available processor cores setThreadCount)

Set Verbose setting.

Test Suite Timeout in Minutes Default is 1440 minutes == 24 hours

Log4j

Appender console filter threshold level setting.

Appender console filter threshold type setting.

Appender console layout charset setting.

Appender console layout disable Ansi setting.

Appender console layout no Console No Ansi setting.

Appender console layout pattern setting.

Appender console layout type setting.

Appender console name setting.

Appender console type setting.

Appender file file Name setting.

Appender file filter threshold level setting.

Appender file filter threshold type setting.

Appender file layout charset setting.

Appender file layout pattern setting.

Appender file layout type setting.

Appender file name setting.

Appender file type setting.

Logger app level setting.

Logger app name setting.

Name setting.

Uses asynchronous appenders for console, file, and ReportPortal logging.

Pilot

comma-separated approved evidence categories

environment variable containing the Anthropic credential

Anthropic Messages endpoint

configured Anthropic model

explicit Anthropic endpoint processing location

Anthropic API contract version

circuit-open cooldown in seconds

failures required to open the circuit

whether local inference is approved

whether explicitly classified on-prem inference is approved

whether remote inference is approved

whether optional AI execution is enabled

environment variable containing the Gemini credential

Gemini models endpoint

configured Gemini model

explicit Gemini endpoint processing location

maximum concurrent calls per provider

maximum accepted provider-reported cost in USD

maximum estimated input tokens

maximum output tokens

maximum serialized request size

optional environment variable containing an on-prem Ollama gateway credential

optional Ollama gateway credential header

optional Ollama gateway credential prefix

Ollama chat endpoint

configured Ollama model

explicit Ollama endpoint processing location

environment variable containing the OpenAI credential

OpenAI Responses endpoint

configured OpenAI model

explicit OpenAI endpoint processing location

selected provider identifier

comma-separated structured or DOM attributes to redact

double-semicolon-separated custom regular expressions

comma-separated CSS selectors to redact

maximum provider execution attempts

whether optional external telemetry is enabled

maximum provider timeout in seconds