Capybara
Acceptance test framework for web applications
...Capybara also handles asynchronous JavaScript and dynamic content, waiting for elements to appear or actions to complete before assertions run. By bridging test suites with actual browser behavior, Capybara helps ensure that web apps behave correctly from a user’s perspective.