It would be great if it was easy enough that Devs could make a test case before they submit their work. And better yet if Product could easily contribute cases as well.
Test box A:
===================
- Start chat
- Wait 60 seconds
- Send message "Blah blah ID123"
- Wait 60 seconds for DOM element "Acknowledging receipt of ID123" or fail
Test box B:
===================
- Start chat
- Wait 10 minutes for DOM element containing "ID123"
- Send message "Acknowledging receipt of ID123"
As for setting up the tests, I found Datadog's GUI to be pretty easy to use: https://docs.datadoghq.com/synthetics/browser_tests/?tab=req... (it's like a homebrewed DOM selector and logic engine GUI, no coding required, but CSS and Xpath selectors are helpful).
All aspects of the tests are defined as a TypeScript interface so the code editor literally tells you how to complete a test object with the required properties and what the choice of values are.
Here is an old video about it from Feb 2021. It’s much faster and improved now.
Cypress I think doesn't allow multi-tabs etc (or at least at the release version in 2020 when I switched to it, didn't, and I still mentally model it that way), so I go back to selenium for this kind of thing. It's not ideal to use selenium these days, but it works ok.