Did you have a look to ui5-test-runner (https://www.npmjs.com/package/ui5-test-runner) ?
I am also a big fan of Jest / vitest but I also do like the way qUnit and OPA are well integrated inside UI5. Furthermore, the fact that you can run the tests i...
I wouldn't use control.firePress() to simulate a user click. Some controls expect parameters in the firePress internal UI5 method. Why not using .click instead and let UI5 fill these parameters ?