Automating atomic tests as they have only a couple of assertions and aren’t too complicated
Testing in parallels; if you have 30 tests lasting 1 minute each, it’s logical to run them in parallels. 30 parallel runs will save you 29 minutes.
Choose explicit waits since they trigger the next script right after the previous one is completed.
Reduce the number of Selenium commands to achieve more stable and faster testing.
It’s tricky, but those are some things our team has done before (and can do for your app as well)