There are advantages and disadvantages to both approaches, so my recommendation would be to use both.
Selenium launches the actual browser and mimics the user interacting with your web application, which can be great if you are testing Ajax features. He can verify that the elements are visible and interact with them just like the user. Another killer feature is the ability to take screenshots through Selenium, which can be incredibly useful in investigating crashes.
Unfortunately, launching a browser and navigating to a specific page / state in your application can be slow, and you will need a lot of equipment if you want to test concurrent users (load testing) using Selenium.
If you just want to check if your HTTP 200 server responds to certain actions or loads test applications, or that the response contains certain values, then a basic POST / GET would be more suitable.
If you decide to go with Selenium's clean testing approach, I would recommend exploring the use of Selenium Grid or a cloud service, as many tests through Selenium can be time consuming.
Dave hunt
source share