-
Notifications
You must be signed in to change notification settings - Fork 118
Testing Setup and Execution
Use this page for detailed testing setup and test execution workflows.
Set up and execute end-to-end tests for Zowe Explorer.
To run end-to-end tests, define a .env file in packages/zowe-explorer/__tests__/__e2e__ with environment variables for profile information, credentials, and test targets. Refer to .env.example for the complete list.
# Path to the Zowe home folder where configurations are stored (relative to current directory)
ZOWE_TEST_DIR=".zowe"
# Profile variables
ZE_TEST_PROFILE_NAME="<profileName>" # The name of the profile in your Zowe config to use for testing
ZE_TEST_PROFILE_USER="testUser" # The user to leverage during the e2e tests
# USS variables
ZE_TEST_USS_FILTER="/u/users/testUser" # The filter to apply when searching on a USS profile*
ZE_TEST_USS_DIR="test" # The USS directory to use for edit and list testing - should be relative to USS filter*
ZE_TEST_USS_FILE="testFile.txt" # The USS file to edit and save with, relative to USS dir*
# Data Set variables
ZE_TEST_DS_FILTER="TESTUSER.*" # The filter to apply when searching on a Data Sets profile
ZE_TEST_PDS="TESTUSER.C" # The PDS to use for edit and list testing - matched by the defined filter*
ZE_TEST_PDS_MEMBER="TESTC" # The PDS member to use for edit and list testing - relative to the defined PDS*
ZE_TEST_PS="TESTUSER.TESTPS" # The PS to use for editing - matched by the defined filter*
# * means that the item must exist on the test system for it to be considered validOnce configured:
- Change directory to
packages/zowe-explorer. - Build with
pnpm build. - Run tests with
pnpm test:e2e.
Important
On macOS, additional setup may be required:
- Tests may fail to launch with newer VS Code builds due to a Webdriver v8 incompatibility. Set
ZE_TEST_VSCODE_VER="1.93.1". - Native context menus are not Webdriver-controlled, so AppleScript is used. Grant Accessibility permission to VS Code in macOS Settings (
Privacy & Security->Accessibility).
- Build the extension.
- Open Run and Debug.
- Select End-to-end Tests.
- Start with the play button.
Output appears in the VS Code debug console. JUnit reports are written to packages/zowe-explorer/results.
Use integration tests to validate UI and command behavior across profile and tree interactions.
- At least 3 profiles must exist in your Zowe config.
- Profiles do not need valid credentials up front, but hostnames must be valid/reachable for validation paths.
- A default profile must be set for the
zosmfprofile type.
- Build the extension.
- Open Run and Debug.
- Select Behavior-driven Integration Tests.
- Start with the play button.
Output appears in the VS Code debug console. JUnit reports are written to packages/zowe-explorer/results.
Run regression tests to verify compatibility with Theia.
- Install required components:
- Mozilla Firefox
- Google Chrome
- Mozilla Geckodriver (add to PATH)
- ChromeDriver (add to PATH)
- Selenium WebDriver (global install)
- Build a VSIX that contains your changes.
- Build and run the Theia browser example using Setting up your Theia workspace.
- Ensure your latest VSIX is in the
pluginsfolder. - Ensure Theia is running while tests execute.
Optional verification: open http://localhost:3000 and confirm Zowe Explorer is deployed.
- Compile with:
yarn run compile- Run tests with:
yarn run test:theiaOutput appears in the VS Code debug console.
Tests run in headless mode by default. To run with visible Firefox:
- Open
__tests__/__theia__/. - Comment out
firefoxOptions.headless();. - Compile the extension.
- Run Theia regression tests.
Firefox launches with a visible UI while tests run.
zowe/vscode-extension-for-zowe
Welcome
Using Zowe Explorer
Roadmaps
- 2025 Zowe Explorer Roadmap
- 2024 Zowe Explorer Roadmap
- 2023 Zowe Explorer Roadmap
- 2022 Zowe Explorer Roadmap
Development Process
- Contributor Guidance
- Developer Setup
- Developer Reference
- Developing for Theia
- File Save Flow
- Menu Commands
Testing Process
Release Process
Backlog Grooming Process
How to Extend Zowe Explorer
- Extending Zowe Explorer
- Using Zowe Explorer Local Storage
- Error Handling for Extenders
- Secure Credentials for Extenders
- Sample Extender Repositories
Conformance Criteria
v3 Features and Information