Splinter - Python test framework for web applications

  •        4217

Splinter is an open source tool for testing web applications using Python. It lets you automate browser actions, such as visiting URLs and interacting with their items. Splinter is an abstraction layer on top of existing browser automation tools such as Selenium, PhantomJS and zope.testbrowser. It has a high-level API that makes it easy to write automated tests of web applications. It has drivers for Chrome and Firefox for browser-based testing, and zope.testbrowser and PhantomJS for headless testing.

Its features include:

  • simple api
  • multi webdrivers (chrome webdriver, firefox webdriver, phantomjs webdriver, zopetestbrowser, remote webdriver)
  • css and xpath selectors
  • support to iframe and alert
  • execute javascript
  • works with ajax and async javascript

https://github.com/cobrateam/splinter

Tags
Implementation
License
Platform

   




Related Projects

Windmill - Web Testing Tool

  •    Python

Windmill is a web testing tool designed to automate and debug your web application. It provides cross-browser test recorder. It has built-in shell to interact with WIndmill server. Write and run tests from Python, Ruby and Javascript.

Capybara - Acceptance test framework for web applications

  •    Ruby

Capybara aims to simplify the process of integration testing Rack applications such as Rails, Sinatra or Merb. Capybara simulates how a real user would interact with a web application. It is agnostic about the driver running your tests and currently comes with Rack::Test and Selenium support built in. HtmlUnit and env.js are supported through external gems.

Webrat - Ruby Acceptance Testing for Web applications

  •    Ruby

Webrat helps to write expressive and robust acceptance tests for a Ruby web application. It supports multiple Ruby web frameworks like Rails, Merb and Sinatra. It also supports popular test frameworks like RSpec, Cucumber, Test::Unit and Shoulda.

Selenium - Web app testing tool

  •    Java

Selenium is a suite of tools such as Selenium IDE, Selenium Remote Control and Selenium Grid to test the web application. Selenium IDE is an integrated development environment for Selenium scripts. It is implemented as a Firefox extension, and allows you to record, edit, and debug tests. It supports record and playback.

Alfajor - Tasty functional testing

  •    Python

Alfajor provides a modern, object-oriented and browser-neutral interface to HTTP resources. Python scripts and test code have a live synchronized mirror of the browser's X/HTML DOM, even with DOM changes made on the client by JavaScript. It has an Api client with native JSON response support useful for testing REST and web API.


Zope-Testbrowser Programmable browser for functional black-box tests

  •    Python

Zope.testbrowser provides an easy-to-use programmable web browser with special focus on testing. It is used in Zope, but it's not Zope specific, it can be used to test or otherwise interact with any web site.

Grinder - Java Load Testing Framework

  •    Java

The Grinder is a Java load testing framework that makes it easy to run a distributed test using many load injector machines. Load test anything that has a Java API. This includes common cases such as HTTP web servers, SOAP and REST web services, and application servers (CORBA, RMI, JMS, EJBs), as well as custom protocols.

GoConvey - Go testing in the browser. Integrates with go test. Write behavioral tests in Go.

  •    Go

GoConvey is a yummy Go testing tool for gophers. Works with go test. Use it in the terminal or browser according to your viewing pleasure.

Linux Desktop Testing Project

  •    C

Linux Desktop Testing Project is aimed at producing high quality test automation framework (using GNOME / Python) and cutting-edge tools that can be used to test Linux Desktop and improve it. It uses the Accessibility libraries to poke through the application's user interface. We strive to help in building a quality desktop.

Mechanize - Stateful Programmatic Web Browsing in Python

  •    Python

Mechanize provides Stateful Programmatic Web Browser. It supports HTML form filling, Custom headers, HTTP authentication, SSL support etc.

Software Automation Framework Support

  •    Java

Multiplatform data-driven test automation execution services

Test Case Generator

  •    CSharp

Generator for test cases based on euquivalence class analysis and combination of states. This tool is basically a wrapper for the PICT-Tool by Microsoft (a tool for Pairwise Independent Combinatorial Testing). So the tool itself is not included but can be downloaded from http:...

karate - Test Automation Made Simple

  •    Java

Karate is the only open-source tool to combine API test-automation, mocks, performance-testing and even UI automation into a single, unified framework. The BDD syntax popularized by Cucumber is language-neutral, and easy for even non-programmers. Powerful JSON & XML assertions are built-in, and you can run tests in parallel for speed.

GoReplay - Captures and replay live HTTP traffic into a test environment in order to continuously test your system with real data

  •    Go

GoReplay is the simplest and safest way to test your app using real traffic before you put it into production.As your application grows, the effort required to test it also grows exponentially. GoReplay offers you the simple idea of reusing your existing traffic for testing, which makes it incredibly powerful. Our state of art technique allows to analyze and record your application traffic without affecting it. This eliminates the risks that come with putting a third party component in the critical path.

Karma - Spectacular Test Runner for JavaScript

  •    Javascript

Karma is essentially a tool which spawns a web server that executes source code against test code for each of the browsers connected. The results for each test against each browser are examined and displayed via the command line to the developer such that they can see which browsers and tests passed or failed. It is a simple tool that allows you to execute JavaScript code in multiple real browsers.

just-api - Easy and Flexible API Testing

  •    Javascript

Just-API is a declarative, specification based test framework for REST, GraphQL APIs. Users can test APIs without writing code, but they can also tap into code when they want to. It reads API test specification from YAML files and runs them in serial/parallel mode. Test reports can be generated in several formats including HTML and JSON. To run just-api, you will need Node.js v7.10.0 or newer.

Squash - Test Repository Management

  •    Java

Squash TM is an open source tool for test repositories management. Natively "multi" and "cross" projects, it can manage all testing stages, from requirements management to campaigns execution. Based on an ergonomic and intuitive interface, Squash is also "full web" making it an eazy tool to deploy.

MailDev - SMTP Server + Web Interface for viewing and testing emails during development

  •    Javascript

MailDev is a simple way to test your project's generated emails during development with an easy to use web interface that runs on your machine built on top of Node.js.

locust - Scalable user load testing tool written in Python

  •    Python

Locust is an easy-to-use, distributed, user load testing tool. It is intended for load-testing web sites (or other systems) and figuring out how many concurrent users a system can handle. The idea is that during a test, a swarm of locusts will attack your website. The behavior of each locust (or test user if you will) is defined by you and the swarming process is monitored from a web UI in real-time. This will help you battle test and identify bottlenecks in your code before letting real users in.

Pylot - Performance & Scalability Testing of Web Services

  •    Python

Pylot is a free open source tool for testing performance and scalability of web services. It runs HTTP load tests, which are useful for capacity planning, benchmarking, analysis, and system tuning. Pylot generates concurrent load (HTTP Requests), verifies server responses, and produces reports with metrics. Tests suites are executed and monitored from a GUI or shell/console.