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

Python 3 compatible generic test automation framework

Project Description

Robot Framework with Python 3.3+ compatibility

Please report any issues to:

You can look at this URL for a complete code diff:


python install

Or with pip:

pip install .

Or from PyPI:

pip install robotframework-python3


Differences in Python 3

Python 3 makes a clear distinction between str for textual data and bytes for binary data. This affects the Standard Test Libraries and their Keywords:

  • str arguments don’t work where bytes are expected, like writing to binary file streams or comparing with other bytes.
  • bytes don’t work where str is expected, like writing to text mode streams or comparing with another str.
  • Reading from binary streams always returns bytes.
  • Reading from text streams always returns str.

You can use the following keywords to explicitly create bytes:

  • BuiltIn.Convert To Bytes
  • String.Encode String To Bytes

I extended Process.Start Process with a binary_mode argument. By default the process streams are opened in text mode. You can change this with:


Collections.Get Dictionary Keys normally sorts the keys. I disabled key sorting in Python 3, because most builtin types are not comparable to each other. This further affects Get Dictionary Values and Get Dictionary Items. I still need to find a better solution… Maybe imitate Python 2 sorting? Any suggestions? :)

Stefan Zimmermann

Robot Framework

Robot Framework is a generic test automation framework for acceptance testing and acceptance test-driven development (ATDD). It has easy-to-use tabular test data syntax and utilizes the keyword-driven testing approach. Its testing capabilities can be extended by test libraries implemented either with Python or Java, and users can create new keywords from existing ones using the same syntax that is used for creating test cases.

Release history Release notifications

History Node


History Node


History Node


History Node


History Node


This version
History Node


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
robotframework-python3-2.8.4.tar.gz (591.5 kB) Copy SHA256 hash SHA256 Source None May 9, 2014

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