Skip to main content
Help us improve Python packaging – donate today!

UI testing library for PyQt

Project Description


satin-python is simple UI matcher and driver library, built on top of hamcrest and PyQt


Finding specific widget
To find a specific widget, use function widget:

sub_widget = widget(dialog,

Where dialog is Qt object to examine and matcher is hamcrest matcher capable
of detecting specific widget.

To check that a widget has label with text 'Title':

assert_that(item, has_label('Title'))

Event loop
To start event loop, use @satin_suite class decorator. This will modify your
test class to start QApplication behind the scenes in order to have the event
loop running. When the test method completes, QApplication is automatically

def TestWidget():
def test_clicking_around():

satin-python is copyrighted by Tuukka Turto and is placed under
GNU General Public License. For more information, please refer to license.txt
found in the main folder.

Release history Release notifications

This version
History Node


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
satin-0.1.0.tar.gz (4.1 kB) Copy SHA256 hash SHA256 Source None Jul 14, 2013

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page