What exists and what are advantages / disadvantages of each one ?
So your question is too broad to answer. Let's suggest questions you should ask yourself first to narrow down the choices.
What are you testing? Application, browser, protocol, client/server.
What does your technology stack look like? Servers types, DB type (Oracle, MySQL, SQLServer), Windows, Linux, iOS, Android, etc.
What type of tests are you running? Performance, security, Use Case validation, functional, UX, AB, etc.
What level of experience and skill do the testers and engineers have? Programming ability, programming languages, ability to start from scratch, etc.
With what will your automation tool interact? Continuous build system, bug tracking (Bugzilla, JIRA), workflow/project control (JIRA).
How many people will work with this system?
What is the budget?
The answers to these questions will help narrow down your choices.
There are whole websites for SQA devoted to helping down these questions. And remember to pay attention to the date that the material you are looking at was written. These tools constantly evolve--disadvantages often get fixed.