We basically use Selenium for smoke testing and regression testing. We don't use it much for functional testing because you can easily and manually use a bunch of tests and make them a Zephyr. We use Zephyr as our test case management tool, which is a kind of a plugin for JIRA. So, we create our test cases in Zephyr, and then they are tagged to be automated. After that, we put them into our regression suite. Each team has its own independent regression suite. Currently, my team has a couple hundred, but I know some teams have 500 or 600 in their suite. We also have a suite of smoke tests that we run through Selenium.
All the code is on-prem. We're currently just running the tests through the Jenkins pipeline, but we want to be able to run them in parallel in the cloud and a lot quicker. We are not quite there yet.