Well, Selenium because it is best for web application testing including UI and end-to-end testing. It also have WebDriver bindings are available for multiple programming languages including Java, Python, JavaScript/Node.js, etc. BUT, yes, there is a but, it is important to note that Selenium is primarily used for web application testing (well, based on your use case) and you need tests on a modular level. JUnit is for Java.
I would recommend two other tools which are both very similar to each other partially because the same core team wrote both of them. One for Google then went over to Microsoft to do something similar. These tools are designed to work at testing modern websites which could be single page applications (SPA)