Python client for Sixpack, an A/B testing framework under active development at SeatGeek
Project description
Python client library for SeatGeak’s Sixpack ab testing framework.
Installation
First install in your virtual environment:
$ pip install sixpack-client
Usage
Basic example:
from sixpack.sixpack import Session session = Session() # Participate in a test (creates the test if necessary) session.participate("new-test", ["alternative-1", "alternative-2"]) # Convert session.convert("new-test")
Each session has a client_id associated with it that must be preserved across requests. Here’s what the first request might look like:
session = Session() resp = session.participate("new-test", ["alternative-1", "alternative-2"]) set_cookie_in_your_web_framework("sixpack-id", session.client_id)
You can then make decisions in your application based on resp[‘alternative’][‘name’]:
session = Session() resp = session.participate("new-test", ["alt-1", "alt-2"]) if resp["alternative"]["name"] == "alt-1": set_variable_in_view("new-test-alternative", "alt-1")
For future requests, create the Session using the client_id stored in the cookie:
client_id = get_cookie_from_web_framework("sixpack-id") session = Session(client_id=client_id) session.convert("new-test")
Sessions can take an optional options dictionary that takes host and timeout as keys. This allows you to customize Sixpack’s location.:
options = {'host': 'http://mysixpacklocation.com'} session = Session(client_id="123", options=options)
If Sixpack is unreachable or other errors occur, sixpack-py will provide the control alternative.
Contributing
Fork it
Create your feature branch (git checkout -b my-new-feature)
Commit your changes (git commit -am ‘Added some feature’)
Push to the branch (git push origin my-new-feature)
Create new Pull Request
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file Sixpack-client-1.1.0.tar.gz
.
File metadata
- Download URL: Sixpack-client-1.1.0.tar.gz
- Upload date:
- Size: 4.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0c8596e0b2fc3a56f1b747b71a7679fc3f4ce335b2967a01224641b075455081 |
|
MD5 | 0c278aeee2829dc565f402d557f56ae8 |
|
BLAKE2b-256 | d94681f549c75e0d9242378de1b7f09ae103fd2fc7c3eefab89c64663ba4f2a5 |