For testing specific UI features, I would recommend looking into Selenium/Appium. Selenium for desktop browser testing, Appium for mobile testing (using Appium you can do mobile specific things like touch actions for instance).
For testing JavaScript, you can take a look at libraries like https://jasmine.github.io/.
Once you have a test script(s) ready, you can point it to cloud based testing services like BrowserStack (I work there).
We provide a large number of actual physical mobile devices to test on (no emulators), For complete list see: https://www.browserstack.com/list-of-browsers-and-platforms/...
Our service is completely free for open source projects !
If you want to go the manual way, you can also do that with BrowserStack, we provide the 'Live' product where you can control and test your website on actual mobile devices straight from your browser.