Skip to content

Manual Test Management beta ​

Manage your manual test cases using Gherkin feature files stored in version control and automatically synced to TestBeats Portal. Treat your test cases like code - with all the benefits of Git workflows, code review, and CI/CD automation.

Overview ​

TestBeats now supports managing manual test cases through Gherkin feature files (.feature). Instead of maintaining test cases in spreadsheets or separate test management tools, you can:

  • Write test cases in Gherkin: Use familiar Given-When-Then syntax to define test scenarios
  • Store in Git: Keep test cases alongside your code with full version history
  • Review like code: Use pull requests to review and approve test case changes
  • Automate syncing: Use CI/CD to automatically sync changes to TestBeats Portal

This approach brings software development best practices to manual test management, making it easier to maintain, review, and track changes to your test suite over time.

BETA STATUS

Manual test management is currently in beta. Some Gherkin features are not yet supported:

  • Data Tables
  • Scenario Outlines with Examples

These will be added in future releases.

Why Use Version-Controlled Test Cases? ​

Version Control Integration ​

Storing test cases in Git provides powerful benefits:

Track Changes Over Time

  • See who changed what and when
  • Understand the evolution of your test coverage
  • Compare test cases across different versions

Pull Request Workflows

  • Review test case changes before they're merged
  • Discuss and refine test scenarios with your team
  • Ensure quality through peer review

Branching and Rollback

  • Create feature branches for new test scenarios
  • Rollback to previous versions if needed
  • Maintain stable test suites on main/production branches

CI/CD Automation ​

Automate test case synchronization with your deployment pipeline:

Automatic Sync on Merge

yaml
# When a PR is merged to main, automatically sync test cases
on:
  push:
    branches: [main]
    paths:
      - 'tests/manual/**/*.feature'

Always Up-to-Date

  • Portal reflects the current state of your test suite
  • No manual upload steps required
  • Single source of truth in your repository

Audit Trail

  • Git commit history provides complete audit trail
  • Link test case changes to code changes
  • Understand test coverage evolution alongside features

Team Collaboration ​

Treat test cases like code for better collaboration:

Code Review for Test Cases

  • QA can submit test cases via pull requests
  • Developers can review for technical accuracy
  • Product owners can verify business requirements

Shared Ownership

  • Everyone can contribute to test coverage
  • Test cases live next to the features they test
  • Cross-functional collaboration made easy

Documentation as Code

  • Test cases serve as executable documentation
  • Always in sync with your application
  • Easy to find and reference

Best Practices ​

File Organization ​

Organize feature files by functional areas:

tests/manual/
├── features/
│   ├── authentication/
│   │   ├── login.feature
│   │   ├── registration.feature
│   │   └── password-reset.feature
│   ├── checkout/
│   │   ├── cart.feature
│   │   ├── payment.feature
│   │   └── order-confirmation.feature
│   └── profile/
│       ├── edit-profile.feature
│       └── preferences.feature
└── README.md

Naming Conventions ​

Feature Files:

  • Use lowercase with hyphens: user-login.feature
  • Name describes the feature being tested
  • Be specific and descriptive

Scenarios:

  • Start with action or outcome: "Successful login with..."
  • Include key details: "Failed login with invalid password"
  • Be concise but clear

Steps:

  • Use clear, action-oriented language
  • Be specific about what to click/enter
  • Include expected outcomes in Then steps

Current Limitations ​

BETA LIMITATIONS

The following Gherkin features are not yet supported in this beta release:

Data Tables:

gherkin
# Not supported yet
Given the following users exist:
  | username | role    |
  | john     | admin   |
  | jane     | user    |

Scenario Outlines with Examples:

gherkin
# Not supported yet
Scenario Outline: Login with different credentials
  Given I enter username "<username>"
  When I enter password "<password>"
  Then I should see "<message>"

  Examples:
    | username | password | message |
    | john     | pass123  | Success |
    | jane     | wrong    | Error   |

These features will be added in future releases. We recommend writing individual scenarios for now:

gherkin
# Current workaround
Scenario: Login as admin user john
  Given I enter username "john"
  And I enter password "pass123"
  Then I should see "Login successful"

Scenario: Login as regular user jane
  Given I enter username "jane"
  And I enter password "pass456"
  Then I should see "Login successful"

Troubleshooting ​

No Files Found ​

If the sync command reports no feature files found:

  1. Check the path: Ensure --path points to the correct directory
  2. Verify file extension: Files must end with .feature
  3. Check permissions: Ensure files are readable
  4. Look for typos: Verify directory and file names

Authentication Errors ​

If you see authentication errors:

  1. Verify API key: Check that your API key is valid
  2. Check project name: Ensure the project exists in your portal
  3. Confirm permissions: API key must have write permissions
  4. Environment variables: If using env vars, ensure they're set correctly

Sync Not Updating Portal ​

If changes aren't reflected in the portal:

  1. Check CI/CD logs: Look for error messages in workflow logs
  2. Verify path filters: Ensure CI/CD triggers on correct paths
  3. Confirm API key in secrets: Check that secrets are properly configured
  4. Test locally: Run sync command locally to verify it works

See Also ​


Ready to get started? Create your first feature file and sync it to TestBeats Portal!

Released under the MIT License.