Integraties: Jira, Xray, Azure DevOps, Slack en Telegram
Nexus Studio maakt verbinding met vijf diensten: Jira Cloud, Xray Cloud, Azure DevOps, Slack en Telegram. Elke dienst staat uit totdat je die inschakelt en wordt rechtstreeks vanaf je computer benaderd, nooit via onze servers. Deze pagina legt uit wat elke dienst doet, welke sleutels die uitleest en wat die nooit doet.
Door het Nexus Studio-team, Verdict System LLC. 9 oktober 2026.
Hoe elke integratie werkt
- Uit totdat je die inschakelt. Elke dienst heeft een eigen schakelaar:
JIRA_ENABLED,XRAY_ENABLED,AZURE_BOARDS_ENABLED,SLACK_ENABLEDenTELEGRAM_ENABLED. Ze staan allemaal standaard opfalse. - Rechtstreeks vanaf je computer. De engine roept de eigen API van elke dienst aan vanaf de computer waarop de tests worden uitgevoerd. Niets loopt via onze servers en we krijgen je issues, meldingen of resultaten nooit te zien.
- Sleutels blijven in de werkruimte. Tokens en sleutels staan als regels in het
.env-bestand van de werkruimte, op je schijf. Via Instellingen, onder Integraties, kun je ze bewerken en worden alle tokens, sleutels en webhooks afgeschermd weergegeven. - Sandboxuitvoeringen blijven buiten beschouwing. Een sandboxuitvoering is een test in ontwikkeling, geen bevinding: die maakt nooit een issue aan, plaatst er nooit een reactie bij en sluit er nooit een.
Eén issue per test, zolang die blijft mislukken
Jira en Azure Boards volgen dezelfde levenscyclus. Het issue hoort bij de test, niet bij de uitvoering. Een test die elke nacht mislukt, levert dus één issue met een geschiedenis op, niet elke nacht een nieuw issue.
- De eerste mislukking opent één issue. Een uitvoering die eindigt met BREACHED, BREACHED_FLAKY, CHAOS_BREACHED of TIMEOUT opent één issue voor die test, met de fout en de schermafbeelding van de mislukking als bijlage.
- Een herhaalde mislukking voegt een reactie toe. Zolang dat issue openstaat, voegt de volgende mislukking er een reactie aan toe, met de nieuwe schermafbeelding als bijlage. Twee browsers waarin de test tegelijk mislukt, voegen informatie toe aan hetzelfde issue.
- Een volledig geslaagde test sluit het issue. Wanneer de test in elke browser van een uitvoering zonder problemen slaagt, krijgt het issue een reactie die dat vermeldt en gaat het naar de status voor afgeronde issues. Als de workflow zo'n overgang of status niet heeft, wordt alleen de reactie toegevoegd.
- Een mislukking daarna opent een nieuw issue. Dat geldt ook voor een mislukking waarvan het issue is verwijderd of verplaatst.
Bijlagen: standaard alleen de schermafbeelding. Het Playwright-tracebestand en het uitvoeringslogboek worden alleen ook toegevoegd als je daarvoor kiest met NEXUS_ISSUE_ATTACH_TRACE=true in Instellingen, omdat ze sessiegegevens kunnen bevatten: cookies, autorisatieheaders en ingevoerde wachtwoorden. Elk bestand wordt alleen bijgevoegd als het maximaal 10 MB groot is.
FLAKY maakt nooit iets aan: een uitvoering die eerst mislukte en bij een nieuwe poging slaagde, is geen bug. Dat geldt ook voor BLOCKED, UNREACHABLE, CRASHED of een configuratiefout: die gaan over de omgeving, niet over je applicatie (hoe oordelen worden bepaald). Welk issue bij welke test hoort, wordt bijgehouden in evidence/integrations/issue-map.json, in de werkruimte.
Jira Cloud
- Verbinden: het e-mailadres van je Atlassian-account en een API-token, aangemaakt op id.atlassian.com. Plak in Instellingen, onder Integraties, een willekeurige link van je Jira-site: Studio bewaart de site en de projectsleutel. Het siteadres,
JIRA_BASE_URL, moet https gebruiken. Verbinding controleren test deze gegevens en maakt niets aan. - Issues: een Bug in
JIRA_PROJECT_KEY, volgens de bovenstaande levenscyclus. Als de test zonder problemen slaagt, doorloopt het issue de overgang met de naam inJIRA_DONE_TRANSITION, standaard Done, waarbij hoofdletters en kleine letters geen verschil maken. - Geen duplicaten: als er in de afgelopen 24 uur een Bug met dezelfde samenvatting is aangemaakt, wordt er geen tweede aangemaakt.
- Handmatig: de Evidence Locker kan een mislukking naar Jira sturen wanneer je daarvoor kiest.
Xray Cloud
Met XRAY_ENABLED=true importeert elke nexus ci-uitvoering zijn JUnit XML in Xray Cloud als een Test Execution, in XRAY_PROJECT_KEY, of in JIRA_PROJECT_KEY als die eerste leeg is, en onder het Test Plan in XRAY_TEST_PLAN_KEY als je dat instelt.
- Verbinden: een API-sleutelpaar,
XRAY_CLIENT_IDenXRAY_CLIENT_SECRET, aangemaakt in Jira onder Apps, Xray, Algemene instellingen, API-sleutels. - Wat wordt verstuurd: het JUnit-bestand van die uitvoering, en niets anders. Een JUnit-bestand van een eerdere uitvoering wordt nooit geïmporteerd.
- Laat de uitvoering nooit mislukken: als de import mislukt, vermeldt het logboek van de uitvoering de reden op één regel, waarbij het geheim is weggelaten.
Azure DevOps: Boards, Test Plans en Pipelines
Eén persoonlijk toegangstoken (PAT) en één project, in AZURE_DEVOPS_ORG_URL (https://dev.azure.com/<org> of https://<org>.visualstudio.com) en AZURE_DEVOPS_PROJECT. Het PAT wordt alleen naar de eigen hosts van Azure DevOps verstuurd en verschijnt nooit in een logregel. In Instellingen controleert Integraties, Verbinding maken met Azure DevOps het project en het type werkitem, zonder iets aan te maken.
- Azure Boards: met
AZURE_BOARDS_ENABLED=truewordt bij een fout een werkitem van het typeAZURE_BOARDS_WORK_ITEM_TYPEgeopend, standaard Bug, volgens de bovenstaande levenscyclus. Bij een volledig geslaagde uitvoering gaat het naar de status inAZURE_BOARDS_DONE_STATE, standaard Resolved; als een proces die status weigert, wordt alleen de opmerking toegevoegd. Het PAT heeft de machtiging Work Items (lezen & schrijven) nodig. De Evidence Locker kan een fout ook handmatig naar Azure Boards sturen. - Azure Test Plans: het bestand
azure-pipelines.ymldat het CI/CD-scherm genereert, publiceert de JUnit-XML van de uitvoering met de taakPublishTestResults@2, zodat elke pijplijnuitvoering verschijnt onder Test Plans, Uitvoeringen. - Azure Pipelines:
nexus ci-remote --provider=azurezet een uitvoering van de pijplijn inAZURE_PIPELINE_IDin de wachtrij, wacht tot deze is voltooid en haalt de JUnit-XML terug naar deze machine. Het PAT heeft hiervoor de machtiging Build (lezen & uitvoeren) nodig.
Slack
- Verbinding maken: één URL voor een inkomende webhook, in
SLACK_WEBHOOK_URL. Instellingen bevat een knop Testbericht versturen. - Wat het ontvangt: Block Kit-berichten: de samenvatting van de uitvoering en, met
NEXUS_SLACK_NOTIFY=true, één bericht per mislukte test, instabiele test, chaostest of visuele regressietest. Een bericht over een fout bevat een koppeling naar het bijbehorende Jira-issue als dat er is. - Handmatig: de Evidence Locker kan een tekstsamenvatting van een fout op Slack plaatsen. Slack ontvangt geen bestanden.
Telegram
- Verbinding maken: een eigen bot, eenmalig aangemaakt met @BotFather, in
TELEGRAM_TOKEN. In Instellingen koppelt Verbinden via QR je chat en vult hetTELEGRAM_CHAT_IDin. Er is geen gedeelde bot. - Wat het ontvangt: meldingen bij fouten, één per test met
NEXUS_TELEGRAM_NOTIFY=true, en de rapporten en bestanden die je vanuit de Studio wilt delen. - Voordat je het inschakelt: Telegram kan bestanden ontvangen, zoals rapporten en pdf's, en deze komen op de servers van Telegram terecht. Vraag in een gereguleerde omgeving eerst toestemming aan je nalevingsteam.
De sleutels
Elke sleutel staat op een regel in het .env-bestand van de werkruimte. Via Instellingen kun je ze allemaal bewerken.
| Dienst | Sleutels | Standaardwaarden |
|---|---|---|
| Jira Cloud | JIRA_ENABLED, JIRA_BASE_URL, JIRA_EMAIL, JIRA_API_TOKEN, JIRA_PROJECT_KEY, JIRA_DONE_TRANSITION | Uit; project QA; overgang Done |
| Xray Cloud | XRAY_ENABLED, XRAY_CLIENT_ID, XRAY_CLIENT_SECRET, XRAY_PROJECT_KEY, XRAY_TEST_PLAN_KEY | Uit; het Jira-project indien leeg |
| Azure DevOps | AZURE_BOARDS_ENABLED, AZURE_DEVOPS_ORG_URL, AZURE_DEVOPS_PROJECT, AZURE_DEVOPS_PAT, AZURE_BOARDS_WORK_ITEM_TYPE, AZURE_BOARDS_DONE_STATE, AZURE_PIPELINE_ID | Uit; type Bug; status Opgelost |
| Bijlagen bij issues | NEXUS_ISSUE_ATTACH_TRACE | Uit: alleen de schermafbeelding |
| Slack | SLACK_ENABLED, SLACK_WEBHOOK_URL, NEXUS_SLACK_NOTIFY | Uit |
| Telegram | TELEGRAM_ENABLED, TELEGRAM_TOKEN, TELEGRAM_CHAT_ID, NEXUS_TELEGRAM_NOTIFY | Uit |
In een pijplijn zijn dezelfde sleutels, behalve AZURE_PIPELINE_ID, de geheime variabelen van de pijplijn. Als je een sleutel niet instelt, blijft de bijbehorende dienst uitgeschakeld (geheimen in CI/CD).
Vragen
Kan Nexus Studio mijn gegevens in Jira of Azure DevOps zien?
Nee. De engine communiceert vanaf je machine met Jira, Xray, Azure DevOps, Slack en Telegram, met jouw sleutels. Niets daarvan gaat via onze servers.
Wordt er een ticket aangemaakt voor een instabiele test?
Nee. FLAKY maakt niets aan. BREACHED_FLAKY wel: de fout zelf trad niet consequent op, en een nieuwe poging verbergt die niet.
Een test is deze week 30 keer mislukt. Hoeveel issues levert dat op?
Eén, met een opmerking en een nieuwe schermafbeelding voor elke mislukking na de eerste, totdat de test in elke browser foutloos slaagt.
Kan ik Jira en Azure Boards tegelijk gebruiken?
Ja. Elk houdt een eigen issue per test bij.