TestingOps Tester Agent for Jira
TestingOps Tester Agent is a Jira Cloud app built on Atlassian Forge. It brings a QA engineer into every work item: it reviews new stories for testability, proposes acceptance criteria, and writes them into the story only after a person approves in Jira. Everything it does follows the rules your organisation configures in TestingOps and is recorded in an audit log.
1. Requirements
- A Jira Cloud site where you are a site administrator.
- A TestingOps organisation (testingops.ai) with the Tester Agent feature enabled.
2. Install the app
- Install TestingOps Tester Agent from the Atlassian Marketplace (or from the installation link your TestingOps contact gave you). The app asks for: view user profiles, view Jira issue data, create and manage issues, app storage, and to send data to testingops.ai.
- Until it is paired with your TestingOps organisation, the app does nothing.
3. Create the setup code in TestingOps
- In TestingOps open Integrations → Trackers & sources.
- Add a Jira connection with your site address (for example
https://company.atlassian.net). An API token is not required when you use the app. - Under the connection, in the Jira app box, select Generate setup code and copy the code. It is shown only once; generating a new code replaces the old one and resets the pairing.
4. Pair the app
- In Jira open Apps → Manage apps → TestingOps.
- Paste the setup code and select Pair. The page shows "Paired" with your TestingOps address.
- Back in TestingOps the Jira app box shows Paired with the site and time.
5. Use it
| Trigger | What the agent does |
|---|---|
| A story is created | Posts a refinement note: what is unclear, missing edge cases, questions for the author. |
Label testingops is added, or the app is mentioned | Proposes acceptance criteria as a comment and waits for approval. |
Comment /testingops approve | Writes the approved criteria into the description under "Kabul kriterleri (testingops)". |
Comment /testingops reject <reason> or /testingops edit <change> | Rejects, or revises the proposal and asks again. |
Which triggers are active, who may approve and how long a proposal waits are rules you set in TestingOps (organisation, project and item-type level). Approval mode is the default; the agent never changes a work item without a person's approval unless you configure a rule to do so.
5a. Jira Server / Data Center (on-premise)
There is no app for Jira Server or Data Center (Forge apps are Cloud-only). The same agent works through Jira's built-in webhooks and REST API:
- In TestingOps add a Jira connection with your server address (for example
https://jira.company.local/jira) and a Personal Access Token. If the server is not reachable from the internet, attach the connection to a private network (VPN gateway) under Integrations → Private networks. - Under the connection, in the Jira webhook box, select Generate webhook address and copy it.
- A Jira administrator opens Settings → System → WebHooks → Create a WebHook, pastes the address as URL, selects the events Issue: created, updated and Comment: created, and limits it with a JQL such as
project = UOD. - Triggers and commands are the same as above. Comments and acceptance criteria are written with the connection's token, so they appear under that user's name.
6. Knowledge sync and defect creation without a token (optional)
When the Jira connection in TestingOps has no API token but the app is paired, TestingOps uses the app instead of a personal token for two more things:
- Knowledge sync: the project's work items are read through the app for the knowledge base (test case generation, requirement tracing). Link the Jira project under Knowledge → Sources as usual.
- Defects: a defect opened in TestingOps is created in the linked Jira project (issue type from the source link, default Bug). On Jira Cloud the reporter is the app; on Server / Data Center it is the service user chosen when pairing.
What still needs a token: live Jira tools used by agents during a conversation (reading or editing arbitrary issues on request). Enter a token under Trackers & sources if you want those.
7. Data and privacy
- The app stores only the setup code and its own account id in Forge app storage.
- Events are forwarded to TestingOps (hosted in the EU, Frankfurt), where the audit log keeps the item key, rule, outcome and proposed text, plus the account id and display name of the person who triggered it.
- Uninstalling the app, or removing the pairing on the app page, stops all processing immediately; uninstalling also erases the display names stored in the audit log for that site.
- Once a day TestingOps checks the stored Atlassian account ids against Atlassian's personal data reporting API and erases names for closed or changed accounts.
- Details: Privacy Policy · Terms of Service.
8. Support
Türkçe özet
Uygulamayı Marketplace'ten kurun. TestingOps'ta Integrations → Trackers & sources altında Jira bağlantısı açın (token gerekmez), "Jira app" kutusundan kurulum kodu üretip Jira'da Apps → Manage apps → TestingOps sayfasına yapıştırın. Kayıt açılınca agent inceleme notu yazar; testingops etiketiyle kabul kriteri önerir; /testingops approve yorumuyla kriterler açıklamaya yazılır. Kurallar TestingOps'ta tanımlanır, varsayılan onaylı moddur. Uygulamayı kaldırmak işlemeyi anında durdurur.