GUS Test Suite Automation Extension
A VS Code extension for automating GUS Test Suite tasks, including GitHub PR management and GUS authentication.
Installation
- Copy the
gustestsuiteautomation-1.0.0.vsix file to your local machine
- Open Cursor
- Open the Command Palette (Cmd+Shift+P or Ctrl+Shift+P)
- Type "Extensions: Install from VSIX" and select it
- Navigate to and select the
gustestsuiteautomation-1.0.0.vsix file
Uninstallation
To uninstall the extension, run the following command in your terminal:
code --uninstall-extension gustestsuite.gustestsuiteautomation
After uninstalling, you'll need to reload the Cursor window for the changes to take effect. You can do this by:
- Using the keyboard shortcut:
Cmd+Shift+P (Mac) or Ctrl+Shift+P (Windows/Linux), then type "Reload Window"
- Or using the keyboard shortcut:
Cmd+R (Mac) or Ctrl+R (Windows/Linux)
Available Commands
Let's Gusify Tests
- Command:
gustestsuiteautomation.letsGusifyTests
- Description: Open the test gusification interface
- Usage: Open Command Palette and type "Let's Gusify Tests"
- Features:
- PR link parsing for GitCore, GitSoma, and GitHub
- Automatic repository type detection
- Token management for each repository type
- Work item extraction from PR description
- Theme retrieval from GUS
- Test suite generation
- Interactive test scenario management
Gusify My Work Items
- Command:
gustestsuiteautomation.gusifyMyWork
- Description: Gusify work items based on Epic and Release filters
- Usage: Open Command Palette and type "Gusify My Work Items"
- Features:
- Epic Filter: Filter work items by specific Epic (name or ID)
- Release Filter: Filter work items by specific Release/Build
- Date Range: Optional date range filtering for work items
- Automatic PR Discovery: Finds all PRs associated with filtered work items
- Multi-Repository Support: Works with GitCore, GitSoma, and GitHub PRs
- Bulk Processing: Process multiple work items and their PRs simultaneously
- Test Suite Generation: Automatically generates test suites for all discovered PRs
- Workflow:
- Select Epic (optional): Choose a specific Epic to filter work items
- Select Release (optional): Choose a specific Release/Build to filter work items
- Set Date Range (optional): Define a date range for work item filtering
- Click "Fetch my work Items": The extension will:
- Fetch work items matching your criteria
- Discover all associated PRs across repositories
- Generate test suites for each PR
- Display results in organized test scenario panels
- Use Cases:
- Generate test suites for all PRs in a specific Epic
- Process work items for a particular release
- Bulk test generation for multiple related work items
- Historical analysis of work items within a date range
Set Git Core Token
- Command:
gustestsuiteautomation.setGitHubToken
- Description: Securely store your Git Core token for authentication
- Usage: Open Command Palette and type "Set Git Core Token"
- Note: The token is stored securely in VS Code's secret storage
- How to obtain token:
- Go to GitCore
- Click on your profile picture in the top right
- Select "Settings"
- In the left sidebar, click on "Access Tokens"
- Click "Generate New Token"
- Give your token a descriptive name
- Select the required scopes:
repo (Full control of private repositories)
read:org (Read organization data)
- Click "Generate Token"
- Copy the token immediately - you won't be able to see it again!
Clear Git Core Token
- Command:
gustestsuiteautomation.clearGitHubToken
- Description: Remove the stored Git Core token
- Usage: Open Command Palette and type "Clear Git Core Token"
Set Git Soma Token
- Command:
gustestsuiteautomation.setGitSomaToken
- Description: Securely store your Git Soma token for authentication
- Usage: Open Command Palette and type "Set Git Soma Token"
- Note: The token is stored securely in VS Code's secret storage
- How to obtain token:
- Go to GitSoma
- Click on your profile picture in the top right
- Select "Settings"
- In the left sidebar, click on "Access Tokens"
- Click "Generate New Token"
- Give your token a descriptive name
- Select the required scopes:
repo (Full control of private repositories)
read:org (Read organization data)
- Click "Generate Token"
- Copy the token immediately - you won't be able to see it again!
Clear Git Soma Token
- Command:
gustestsuiteautomation.clearGitSomaToken
- Description: Remove the stored Git Soma token
- Usage: Open Command Palette and type "Clear Git Soma Token"
Set Git Token
- Command:
gustestsuiteautomation.setGitToken
- Description: Securely store your GitHub token for authentication
- Usage: Open Command Palette and type "Set Git Token"
- Note: The token is stored securely in VS Code's secret storage
- How to obtain token:
- Go to GitHub
- Click on your profile picture in the top right
- Select "Settings"
- Scroll down to "Developer settings" in the left sidebar
- Click on "Personal access tokens" → "Tokens (classic)"
- Click "Generate new token" → "Generate new token (classic)"
- Give your token a descriptive name
- Set an expiration date (recommended: 90 days)
- Select the required scopes:
repo (Full control of private repositories)
read:org (Read organization data)
- Click "Generate token"
- Copy the token immediately - you won't be able to see it again!
Clear Git Token
- Command:
gustestsuiteautomation.clearGitToken
- Description: Remove the stored GitHub token
- Usage: Open Command Palette and type "Clear Git Token"
Authenticate with GUS
- Command:
gustestsuiteautomation.authenticateGUS
- Description: Authenticate with GUS using your credentials
- Usage:
- Open Command Palette and type "Authenticate with GUS"
- Enter your username
- Enter your SSO password
- Enter your Okta 2FA token
- Features:
- Secure credential handling
- Token persistence for future use
- Automatic token management
- Authentication Methods:
Standard Authentication (Recommended):
- Enter your GUS credentials:
- Username: your.email@gus.com
- Password: your SSO password
- Okta 2FA Token: the 6-digit code from your Okta authenticator app
- The extension will automatically handle the authentication process
Workbench Access Token (Alternative):
- If you're experiencing issues with the standard authentication method:
- Open Workbench
- Click "Login with Salesforce"
- Enter your GUS credentials
- After successful login, click on "Info" → "Session Information"
- Copy the "Session ID" value
- In VS Code:
- Open Command Palette (Cmd+Shift+P or Ctrl+Shift+P)
- Type "Set GUS Token" and select it
- Paste the Session ID when prompted
Clear GUS Token
- Command:
gustestsuiteautomation.clearGUSToken
- Description: Remove the stored GUS authentication token
- Usage: Open Command Palette and type "Clear GUS Token"
- Note: This will require re-authentication for future GUS operations
Features
- Support for multiple Git repositories:
- GitCore (gitcore.soma.salesforce.com)
- GitSoma (git.soma.salesforce.com)
- GitHub (github.com)
- PR link parsing and automatic repository detection
- Secure token management for each repository type
- Work item extraction from PR descriptions
- Theme retrieval from GUS
- Test suite generation and management
- Interactive test scenario editing
- GUS authentication and integration
- Token persistence for all operations
- Modern and responsive UI
- Real-time loading indicators
- Error handling and user feedback
- Work Item Management:
- Epic and Release-based work item filtering
- Date range filtering for work items
- Automatic PR discovery across repositories
- Bulk processing of multiple work items
- Separate full-screen panels for test scenarios
- Work item context in test panel titles
Development
To modify or extend this extension:
- Clone the repository
- Run
npm install
- Make your changes
- Press F5 to start debugging
- Use
vsce package to create a new VSIX file
Building the Extension
To build the extension, run:
npm run compile
To package the extension into a VSIX file, run:
npx vsce package
Extension Settings
| |