Why use Splinter?¶
Splinter is an abstraction layer on top of existing browser automation tools such as Selenium and zope.testbrowser. It has a high-level API that makes it easy to write automated tests of web applications.
For example, to fill out a form field with Splinter:
browser.fill('username', 'janedoe')
In Selenium, the equivalent code would be:
elem = browser.find_element.by_name('username')
elem.send_keys('janedoe')
Because Splinter is an abstraction layer, it supports multiple web automation backends. With Splinter, you can use the same test code to do browser-based testing with Selenium as the backend and “headless” testing (no GUI) with zope.testbrowser as the backend.
Splinter has drivers for browser-based testing on:
For headless testing, Splinter has drivers for: