Chrome Extension
Manage test cases and cycles directly from GitHub using the TestKase browser extension.
Overview
The TestKase Chrome Extension adds a side panel to GitHub issue pages, giving you full test management capabilities without leaving your browser. When you navigate to any issue on github.com, the extension detects the page, identifies the repository, and displays linked test cases, test cycles, and available actions in a convenient side panel. Every action you perform syncs back to TestKase in real time.
This is the same single TestKase Chrome extension used for Jira and GitLab -- it automatically detects which platform's issue page you are on. You do not install a separate extension per platform.
Side panel UI
A dedicated panel appears alongside GitHub issues for instant access
Create test cases
Create and link test cases directly from any GitHub issue
AI generation
Generate test cases with AI from requirement text you paste into the panel
Test cycles
Create and manage test cycles from the side panel
Test execution
Execute tests and record results without leaving GitHub
Automatic mapping
The panel looks up the mapped TestKase project on the TestKase server -- nothing to configure in the extension
Prerequisites
Before using the Chrome Extension with GitHub, make sure you have:
- Google Chrome browser (latest version recommended).
- An active TestKase account with at least one project.
- A Personal Access Token (PAT) generated from TestKase under Settings -> API Keys. See API Keys for details.
- A GitHub account with access to the repository you want to connect.
Installation
- Visit the TestKase on Chrome Web Store.
- Click Add to Chrome and confirm the permissions prompt.
- Once installed, click the Extensions icon (puzzle piece) in the Chrome toolbar.
- Click the pin icon next to TestKase to keep it visible in your toolbar for easy access.
Pinning the extension to your toolbar makes it easy to open the side panel on any supported page with a single click.
Setup
- Connect the platform in TestKase first -- In TestKase, open the Requirement Integration page for the project, and under Chrome Extension connect the GitHub card to the GitHub repository you want. This single configuration covers both requirements and defects.
- Log in with your PAT -- Open the side panel (click the TestKase icon in the toolbar), paste your TestKase Personal Access Token, and click Save & Continue.
That is all. The extension reads the current tab's URL, looks the project up on the TestKase server, and maps itself automatically -- there is no project picker and no settings screen in the extension. If the panel says the GitHub repository is not linked, the connection has not been made in the TestKase dashboard yet.
You must be a member of the TestKase project the repository is connected to. The extension maps itself using your own account, so if you are not on that project's member list the mapping is refused with "You are not a member of the specified project" and the panel keeps asking for setup. Ask a project admin to add you.
The GitHub card under Chrome Extension is a different card from GitHub under API Integrations. The extension only recognises projects connected through the Chrome Extension card, and connecting it replaces whatever requirement and defect integration the project had before. If either type was Built-in, that type's data is permanently deleted -- the project's requirements and requirement folders, its built-in defects, or both. Nothing is migrated and nothing can be recovered. The deletion happens when you confirm the Data Loss dialog, before the connection is saved, so cancelling afterwards does not undo it. See Built-in before you connect.
How It Works
- Navigate to a GitHub issue -- Open any issue page on github.com (e.g.,
https://github.com/your-org/your-repo/issues/42). - Extension detects the platform -- The extension recognizes that you are on a GitHub issue page and checks whether a project mapping exists for that repository.
- Side panel activates -- If a mapping is configured, the side panel opens and displays the test cases and test cycles linked to that issue, along with available actions.
- Perform actions -- Create test cases, link existing ones, generate tests with AI, manage cycles, and execute tests -- all from the side panel.
- Automatic sync -- Every action syncs back to TestKase in real time. Test cases created from the extension appear in your TestKase project immediately.
Where the Side Panel Works
The extension decides what to show purely from the address of the tab you are on, and it only recognises an individual GitHub issue:
| Page | Panel |
|---|---|
https://github.com/owner/repo/issues/42 | Works |
A pull request, https://github.com/owner/repo/pull/42 | "Navigate to an Issue Page" |
| The repository home page or the issue list | "Navigate to an Issue Page" |
GitHub Enterprise Server, or any host that is not exactly github.com | "Navigate to an Issue Page" |
If the panel shows the "Navigate to an Issue Page" screen, the address is the reason -- open the issue itself.
What the Extension Can See
The extension reads the address of the current tab and nothing else. It does not read, inject into, or modify the contents of your GitHub pages. That is also why AI generation asks you to paste the requirement text -- the panel cannot see what is on the issue.
Your TestKase Personal Access Token is the only thing stored in the browser. Project mappings, test cases, cycles and results all live on the TestKase server.
Key Features
Create Test Cases from GitHub Issues
Create a new test case from the side panel and it is linked to the GitHub issue you are on. The form itself starts empty -- the panel cannot read the page, so type the title, steps and expected result yourself. Which fields appear depends on your TestKase project's field configuration; requirement- and defect-link fields are not shown here.
Link and Unlink Test Cases
Link existing test cases from your TestKase project to the current GitHub issue. You can search by name or ID, link multiple test cases at once, and unlink them when they are no longer relevant.
AI Test Generation
Generate test cases with AI from the side panel. Paste the issue description or requirement text into the box yourself -- the panel cannot read the GitHub page, so Generate stays disabled until you provide the text. Choose how many test cases to produce (1 to 10), pick which fields to generate, then review and edit the results before saving them.
Generation spends your organization's shared AI credits, the same pool the TestKase web app uses. When the balance runs out, generation stops — a paid organization is told the credits refresh on the 1st, and a free organization is told to upgrade to a Premium plan for more. If AI is switched off for the organization entirely, the button is disabled instead.
Test Cycle Management
Create new test cycles, link test cases to cycles, and manage cycle details from the side panel. You can view all cycles associated with the current issue and navigate between them without leaving GitHub.
Test Execution
Execute test cases from the side panel. Set a test case to Pass, Fail, Blocked or Not Executed, record an Actual Result, and attach evidence -- all within the GitHub issue view. Results sync back to TestKase immediately. Status is recorded per test case, not per individual step.
Clicking a status saves it straight away. The status button does not wait for Save -- it writes to TestKase the moment you click it, together with whatever is currently in the Actual Result box. There is no undo. Save exists so you can update the Actual Result afterwards; it saves the status and the text together.
One Configuration Covers Both Types
Connecting a GitHub repository through the Chrome Extension card writes a single configuration that TestKase uses for both requirement and defect integration -- you do not configure them separately.
The side panel itself works with test cases and test cycles only. It has no defect features: requirement and defect linking is done in the TestKase web app.
If Your Token or the Connection Stops Working
The side panel replaces itself with a full-screen message rather than failing quietly:
| Screen | Cause | Fix |
|---|---|---|
| PAT Expired or Invalid | Your TestKase Personal Access Token was revoked, deleted, or reached its expiry date | Click Re-enter PAT, then paste a new token. The old one is cleared from the browser for you |
| Integration Setup Required | This repository has never been connected through the GitHub card under Chrome Extension | Connect it in the TestKase dashboard, then click Refresh |
| Integration Disconnected | The connection existed but was reset or replaced in TestKase -- including by someone switching that project to a different connection type while your panel was open | Reconnect it in the TestKase dashboard, then click Refresh |
Nothing you have already created is lost in any of these cases: test cases, cycles and results stay in TestKase. Only the panel's access is interrupted.
For API-based linking without a browser extension -- searching and linking issues to test cases with on-demand status refresh -- see API Integration.
Troubleshooting
▶The extension side panel is not appearing on GitHub issue pages
Check the following:
- Verify the extension is installed and enabled in
chrome://extensions. - Make sure you are on a GitHub issue page (URL should match
github.com/<owner>/<repo>/issues/<number>). - Confirm the GitHub repository is connected in TestKase -- open the Requirement Integration page and check the GitHub card under Chrome Extension.
- Try refreshing the page. If the issue persists, click the TestKase icon in the toolbar to manually open the side panel.
▶My Personal Access Token is not being accepted
Your PAT may be expired or revoked. Steps to resolve:
- Go to TestKase Settings -> API Keys and check whether the token is still active.
- If it has expired, generate a new token.
- Copy the full token string (avoid leading or trailing spaces) and paste it into the extension login screen.
- If the issue persists, try logging out of the extension and logging back in with the new token.
▶Project mapping seems lost or the extension shows the wrong project
Mappings are not stored in your browser -- they live on the TestKase server, so reinstalling the extension, updating Chrome, clearing browser data or switching Chrome profiles cannot lose them. Only your Personal Access Token is stored locally.
If the panel says the GitHub repository is no longer configured, someone has reset or changed the integration in the TestKase dashboard. Reconnect the GitHub card under Chrome Extension on the Requirement Integration page.
▶Actions in the side panel are slow or timing out
This is usually a network issue. Ensure you have a stable internet connection and that your TestKase instance is reachable. If you are behind a corporate VPN or firewall, verify it does not block traffic to the TestKase API.
API Integration
Connect TestKase to GitHub Issues to search issues, link them to test cases, post coverage comments, and refresh issue status on demand.
GitLab
Two ways to connect TestKase with GitLab -- API integration for searching and linking GitLab Issues, and Chrome Extension for browser-based access.
