Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion astro.config.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,9 @@ export default defineConfig({
{ label: 'Working With Plans', link: '/tutorials/working-with-plans'},
{ label: 'Working With Jira', link: '/tutorials/working-with-jira'},
{ label: 'Using AI in Testing', link: '/tutorials/using-ai-in-testing'},
{ label: 'MCP - Connect AI Assistant', link: '/tutorials/mcp-connection'},
{ label: 'MCP - Connect Claude', link: '/tutorials/connect-claude-to-testomat'},
{ label: 'MCP - Connect ChatGPT', link: '/tutorials/connect-chatgpt-to-testomat'},
{ label: 'MCP - Connect with a Config File', link: '/tutorials/mcp-connection'},
{ label: 'Interacting via API', link: '/tutorials/interacting-via-api'},
{ label: 'Set Up Read-Only Access', link: '/tutorials/set-up-read-only-access'},
{ label: 'Migration from TestRail', link: '/tutorials/migration-from-testrail'},
Expand Down Expand Up @@ -430,6 +432,7 @@ export default defineConfig({
{ label: 'YouTrack', link: '/integrations/issues-management/youtrack' },
{ label: 'GitLab', link: '/integrations/issues-management/gitlab' },
{ label: 'Shortcut', link: '/integrations/issues-management/shortcut' },
{ label: 'Plane', link: '/integrations/issues-management/plane' },
{ label: 'Confluence', link: '/integrations/issues-management/confluence'},
],
},
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion src/content/docs/integrations/issues-management/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ head:
- tag: meta
attrs:
name: keywords
content: Testomat.io, issues management, Jira integration, GitHub issues, Azure DevOps, Linear, defect management, QA tools, test tracking, issue linking, automation, test defects, failed test
content: Testomat.io, issues management, Jira integration, GitHub issues, Azure DevOps, Linear, Plane, defect management, QA tools, test tracking, issue linking, automation, test defects, failed test
---

import DirectoryLinks from /src/components/DirectoryLinks.astro;
Expand Down
137 changes: 137 additions & 0 deletions src/content/docs/integrations/issues-management/plane.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,137 @@
---
title: Plane
description: Connect your Plane workspace to Testomat.io to create and link Plane issues from tests and runs. Defects keep their title, description, status, severity, and comments in step with Plane, and severity maps to Plane priority both ways.
type: article
url: https://docs.testomat.io/integrations/issues-management/plane
head:
- tag: meta
attrs:
name: keywords
content: Plane integration, plane.so, Testomat.io, issues management, issue tracking, defect management, link test to issue, work item, severity mapping, self-hosted Plane, Personal Access Token, workspace slug
---

Connect your Plane workspace to a Testomat.io project to raise Plane work items from failing tests, link the ones you already have, and keep defects in step with Plane.

![Plane integration flow: collect values, connect Plane, link issues, and stay synced](./images/plane/plane-integration.png)

## Before You Start

Collect these values from Plane. They all belong to the project you want to connect.

| Value | Where to find it |
| --- | --- |
| **Personal Access Token** | Go to **Workspace settings**, then **Access Tokens** in Plane. See [Create a Personal Access Token](#create-a-personal-access-token). |
| **Workspace Slug** | The part of the URL after the domain: `app.plane.so/acme/projects` means the slug is `acme`. |
| **Project ID** | The project's UUID, for example `8b1f2e3c-4a5d-4e6f-9a1b-2c3d4e5f6a7b`. |
| **Project Identifier** | The short prefix in issue keys. If your work items look like `WEB-123`, the identifier is `WEB`. |

## Create a Personal Access Token

![The Create token window in Plane, opened from Workspace settings → Access Tokens](./images/plane/1-plane-create-token.png)

1. In Plane, click **Settings** in the left sidebar.
2. Under **Developers**, select **Access Tokens**.
3. Click **Add access token**.
4. Enter a **Title** and **Description**.
5. Click **Set expiration date**, or turn on **Never expires**.
6. Click **Generate token**.

:::note

Copy the key from the **Key created** window before you click **Close** - Plane shows it only once.

:::

![The Key created window in Plane with the new access token and the copy button](./images/plane/2-plane-token-created.png)

Plane also downloads a CSV file with the key, so you have a backup.

Your token is ready - it appears in the **Access Tokens** list with the **Active** status.

![The Access Tokens list in Plane with the new token marked Active](./images/plane/3-plane-token-list.png)

## Connect Plane

1. Open **Settings** and go to **Issues management**.
2. Click **Connect to IMS**.
3. Select **Plane** from the list.

![Issues management page in Settings with the Connect to IMS button](./images/plane/4-connect-to-ims.png)

In the connection creation window, fill in the following:

1. Change the **Profile Name** if you want a different one.
2. Enter your **Workspace Slug**.
3. Paste your **Personal Access Token**.
4. Enter the **Project ID**.
5. Enter the **Project Identifier**.
6. Leave **Plane API URL** empty, unless you run Plane yourself.
7. Click **Test Connection**. Testomat.io checks the token, the workspace, and the project before anything is saved.
8. Click **Save**.

![Plane connection form with the workspace slug, project ID, and project identifier filled in](./images/plane/5-connect-plane.png)

The new profile appears on the **Issues management** page. A project can hold several profiles at once, so Plane can sit next to Jira or Linear.

:::note

**Plane API URL** is for self-hosted Plane only. When the field is empty, Testomat.io uses `https://api.plane.so`.

:::

## Create a Plane Issue from a Test

1. Go to the **Tests** page.
2. Open a test or a suite.
3. Click the (`...`) menu and select **Link to Issue**.
4. Pick your Plane profile.
5. Click **Create new issue**.

The work item appears in your Plane project with the description and a link back to the test, and its Plane URL shows on the test. You can do the same for a suite or for a failed test in a run report.

## Link an Existing Plane Issue

Paste the Plane URL into **Link to Issue**. Testomat.io recognizes it as Plane, pulls in the title, and shows it with the Plane icon.

Plane gets a comment on the work item with a link back to Testomat.io, so the connection is visible from both sides.

## Defects Stay in Step with Plane

A defect raised from a Plane link keeps its title, description, status, severity, and comments in step with the work item. Edit the defect in Testomat.io and the change goes back to Plane.

Severity and Plane priority map onto each other both ways:

| Testomat.io severity | Plane priority |
| --- | --- |
| **critical** | urgent |
| **high** | high |
| **medium** | medium |
| **low** | low |
| none | no priority |

## Keep Requirements Up to Date

Plane items you add as requirements refresh **once a day**, so edits made in Plane reach Testomat.io on their own.

When you need the latest version right away, refresh that requirement by hand:

1. Go to the **Requirements** page.
2. Open the requirement.
3. Click the (`...`) menu.
4. Select **Refresh Requirement**.

For everything requirements can do once they are in, see [AI-Requirements](https://docs.testomat.io/advanced/ai-powered-features/ai-requirements).

## If This Doesn't Work

- **Test Connection fails.** Check the **Workspace Slug** against the URL in Plane, and make sure the token belongs to a user who can see that project.
- **The issue search finds nothing.** Check the **Project ID**. It is the UUID, not the short prefix - the prefix goes into **Project Identifier**.
- **A link opens the API address instead of the issue.** Clear the **Plane API URL** field. It stays empty unless you run Plane yourself.
- **Nothing connects on a self-hosted Plane.** Fill in **Plane API URL** with your own API address.
- **A requirement still shows the old text.** The daily refresh has not run yet. Use **Refresh Requirement** to pull it now.

## Next Steps

- [Issues Management Systems](https://docs.testomat.io/integrations/issues-management)
- [Defects](https://docs.testomat.io/project/defects)
- [AI-Requirements](https://docs.testomat.io/advanced/ai-powered-features/ai-requirements)
2 changes: 1 addition & 1 deletion src/content/docs/tutorials/Migration-from-Qase.md
Original file line number Diff line number Diff line change
Expand Up @@ -117,4 +117,4 @@ Match the type to Qase fields: a Qase selectbox or multiselect becomes a **List*

* Moving from another tool? See [Import Tests From TestRail](https://docs.testomat.io/project/import-export/import/import-tests-from-testrail/), [Import Tests From QTest](https://docs.testomat.io/project/import-export/import/import-tests-from-qtest/), and [Import Tests From Testmo](https://docs.testomat.io/project/import-export/import/import-tests-from-testmo/).
* Connect automated tests in [Import Tests From Source Code](https://docs.testomat.io/project/import-export/import/import-tests-from-source-code/).
* Connect an AI assistant to your project with [MCP - Connect AI Assistant](https://docs.testomat.io/tutorials/mcp-connection).
* Connect an AI assistant to your project with [MCP - Connect with a Config File](https://docs.testomat.io/tutorials/mcp-connection).
96 changes: 96 additions & 0 deletions src/content/docs/tutorials/connect-chatgpt-to-testomat.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
---
title: MCP - Connect ChatGPT
description: Connect ChatGPT to your Testomat.io project through the hosted MCP server. Add Testomat.io as a custom MCP server plugin with OAuth, sign in with your Testomat.io account, and ask about your tests in plain language.
type: article
url: https://docs.testomat.io/tutorials/connect-chatgpt-to-testomat
head:
- tag: meta
attrs:
name: keywords
content: MCP, Model Context Protocol, ChatGPT, ChatGPT plugins, Add custom MCP server, OAuth, connector URL, Testomat.io MCP Server, AI assistant, connect ChatGPT
---

Connect ChatGPT to your Testomat.io project. ChatGPT reads your tests, runs, and failures, and can create and update test cases for you. You sign in with your Testomat.io account, so ChatGPT gets the same access you have. No tokens to create, no config files to edit.

![ChatGPT setup in 6 steps: copy the link, open Plugins, fill in the form, create the plugin, sign in, and start chatting](./images/connect-chatgpt-to-testomat/chatgpt-flow-radial.png)

:::note

The MCP Server is part of the AI-powered features. If the menu item is greyed out, turn them on first - see [AI-Powered Features](https://docs.testomat.io/advanced/ai-powered-features). If you use Claude instead, see [MCP - Connect Claude](https://docs.testomat.io/tutorials/connect-claude-to-testomat).

:::

## Copy the Connector URL

1. Open the **Tests** page in the project you want to connect.
2. Click the (`...`) menu in the top-right corner and select **MCP Server**.
3. On the **Chats** tab, click the copy icon next to the connector URL.

![The ⋯ menu on the Tests page, with MCP Server between Insights and AI Skills](./images/connect-claude-to-testomat/1-connect-mcp.png)

The URL ends with your project name, so each project has its own. Copy it from the project you want ChatGPT to work with.

![The Connect Testomat.io MCP Server window with the connector URL and the copy icon](./images/connect-claude-to-testomat/2-copy-connector.png)

## Add Testomat.io as a Plugin

1. In ChatGPT, click **Plugins** in the left sidebar.
2. Click **Add** in the top-right corner and select **Add custom MCP server**.

![The Plugins page in ChatGPT with Add custom MCP server open under the Add button](./images/connect-chatgpt-to-testomat/1-add-custom-mcp-server.png)

In a new pop-up, fill in the following:

1. Enter `Testomat.io` in **Name**.
2. Under **Connection**, keep **Server URL** selected and paste the connector URL.
3. Choose **OAuth** in **Authentication**.
4. Select **I understand and want to continue**.
5. Click **Create as a plugin**.

![The Add custom MCP server window with the name, connector URL, and OAuth authentication filled in](./images/connect-chatgpt-to-testomat/2-mcp-server-form.png)

## Sign In to Testomat.io

1. In the **Connect Testomat.io** window, click **Connect Testomat.io**.
2. Sign in to Testomat.io and approve the access ChatGPT is asking for.

![The Connect Testomat.io window in ChatGPT with the Connect Testomat.io button](./images/connect-chatgpt-to-testomat/3-connect-testomat.png)

Testomat.io now shows under **Installed** on the **Plugins** page.

## Use Testomat.io in a Chat

To start using your connector in a new chat right away:

1. Open the **Testomat.io** plugin page.
2. Click **Try in chat**.

![The Testomat.io plugin page in ChatGPT with the Try in chat button](./images/connect-chatgpt-to-testomat/4-try-in-chat.png)

To use it in a new chat later, click **Plugins** below the message box and select **Testomat**. Ask something simple, like `How many tests are in my project?`, and you'll get an answer straight from your project.

![The Plugins menu below the ChatGPT message box with Testomat selected](./images/connect-chatgpt-to-testomat/5-select-plugin.png)

## What You Can Ask

ChatGPT works with your tests in plain language. A few examples to start with:

| You want to | Ask |
| --- | --- |
| See what failed | `Show me the failed tests from the last run` |
| Find gaps in coverage | `Find all tests tagged @smoke that have no steps` |
| Add a test | `Create a test "User logs in with valid credentials" in the Authentication suite` |

ChatGPT can read and change the same things you can, so anything it writes appears in your project right away.

## If This Doesn't Work

- **There is no Add custom MCP server option.** Ask your workspace admin to turn them on.
- **Testomat is missing from the Plugins menu in a chat.** Check that Testomat.io shows under **Installed** on the **Plugins** page. If it doesn't, add it again.
- **Sign-in finishes but no tests appear.** Copy the URL again from the **Chats** tab. The URL is tied to one project, and a URL from another project will not work.

## Next Steps

- [MCP - Connect Claude](https://docs.testomat.io/tutorials/connect-claude-to-testomat)
- [MCP - Connect with a Config File](https://docs.testomat.io/tutorials/mcp-connection)
- [AI-Powered Features](https://docs.testomat.io/advanced/ai-powered-features)
Loading
Loading