Discuss the need for investigation/review of our UI testing strategy and recommendations/requirements based on current tech/framework and state of coverage, level of effort, etc.
Broadly, there are two types of UI tests: integration tests (full-stack) that operate against a production UI build backed by a live backend, and functional or unit tests (UI-only) that operate against a mocked backend.
integration tests are written in NightmareJS; it is not currently maintained and uses an outdated version of the Electron browser
unit tests are mostly written in BigTest v1, a framework that is now officially deprecated
We have substantial investment in both Nightmare and BigTest, but given their lack of maintenance, we are a bit stuck.
Additional unit testing challenges we face regardless of the framework:
We don't have a good way to manage mocks for unit tests in a way that keeps them in sync with backend changes.
We don't have a good way to manage mocks for interfaces in a single place when multiple UI apps rely on the same interface. Currently, we maintain separate copies of mocks in separate UI repositories.