Skip to main content
Integrations · Notifications

Test results in a Google Chat space

Paste an incoming webhook URL, pick the events that matter, and results arrive as a card carrying the device, the duration, the reason and a button straight back to the run.

No Chat app to install · outbound webhook only

TestKase· QA space

Automate test failed

Checkout suite

Product
Automate · Chrome 152 on Windows 11
Started
4 Sep 2026, 12:48 UTC · by [email protected]
Reason
assertion failed on the payment step
View details
No Chat app
paste an incoming webhook URL
Failures-only preset
or every result, per product
A real button
the only one of the four channels with one
5 retries
before a delivery is marked exhausted

What lands in the space

Every message is a Google Chat cards array built from one neutral description of what happened.

A title, no colour to scan past

The header is the plain-English name of what happened — “Automate test failed”, “Live session dropped”, “Accessibility scan finished” — worded exactly as the event picker worded it. There is no severity emoji or colour, so severity lives only in the wording of the title.

The project as the subtitle

A test-management event belongs to a project, and that project becomes the header subtitle. A Live session, an Automate test and an accessibility scan have none, so the subtitle is dropped rather than padded.

The facts as labelled widgets

One keyValue widget per fact — who ran it, when it started, how long it took, and a plain-English reason when a session ended for one. A fact with no value is left out, never printed as N/A.

Times in readable UTC

The start time is a readable UTC string such as “4 Sep 2026, 12:48 UTC”, built from a fixed month table so the wording cannot drift with where the code runs. Only the Slack card renders a viewer-local time.

A real VIEW DETAILS button

The card carries a proper textButton that opens the session or the scan — the recording, console output and network log for that test are waiting there. Google Chat is the only one of the four channels where the way back is a button.

Reliable delivery

The webhook URL is re-validated before every dispatch, redirects are refused, and sending is fire-and-forget so a slow space never holds up the test that triggered it.

Every event you can subscribe to

Pick events per product — by hand, or with a preset (all results, or failures only). These are the only events that exist.

Device farm & accessibility

  • Automate test passed, failed or errored
  • Live session ended (neutral) or failed
  • Accessibility scan completed or failed

Test management

  • Test case created or deleted
  • Cycle created, completed or deleted
  • Plan created, completed or deleted
  • Bulk execution completed

Deliberately absent

  • Visual — appears in the picker with an empty list; nothing emits a visual event yet.
  • No automate.build.completed — a build is a label, not an object with a lifecycle.
Attempts before a delivery is marked exhausted
5
After which an incomplete send gives up
10s
Delivered rows are swept after a week
7 days
Unsuccessful rows are swept after a month
30 days

Sending is fire-and-forget — a slow space never holds up the run. Retries are spaced a minute, five minutes, half an hour, two hours and eight hours apart, then the delivery is marked exhausted; turn the integration off part-way through and the pending delivery is cancelled instead. The webhook URL is re-validated before every dispatch, loopback, private, link-local, carrier-grade NAT and multicast addresses are refused, and redirects are not followed. The same rules cover a raw JSON webhook.

FAQ

Frequently asked questions

An incoming webhook on the space you want the cards to land in. Webhooks are created by a space manager, and a Google Workspace admin policy can switch that ability off across the domain — worth checking before you go looking for the menu. Then you paste the URL into TestKase, name the integration and choose its events.

Put the failures where your Workspace already lives

Create a webhook on the space, paste the URL, choose failures only. It takes about a minute and there is no Chat app to approve.