seatgeek正在开发的a/b测试框架python client for sixpack

Sixpack-client的Python项目详细描述


https://travis-ci.org/seatgeek/sixpack-py.svg

用于seatgeak的Sixpackab测试框架的python客户端库。

安装

首先在虚拟环境中安装:

$ pip install sixpack-client

用法

基本示例:

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")

每个会话都有一个与之关联的客户机id,必须在请求之间保留。以下是第一个请求的外观:

session = Session()
resp = session.participate("new-test", ["alternative-1", "alternative-2"])
set_cookie_in_your_web_framework("sixpack-id", session.client_id)

然后,您可以根据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")

对于以后的请求,使用存储在cookie中的客户机id创建会话

client_id = get_cookie_from_web_framework("sixpack-id")
session = Session(client_id=client_id)
session.convert("new-test")

会话可以使用可选的选项字典,它将主机超时作为键。这允许您自定义Sixpack的位置。

options = {'host': 'http://mysixpacklocation.com'}
session = Session(client_id="123", options=options)

如果无法访问sixpack或发生其他错误,sixpack py将提供控制选项。

贡献

  1. 叉开它
  2. 创建您的功能分支(git checkout-b my new feature
  3. 提交更改(git commit-am'添加了一些功能'
  4. 推到分支(git push origin my new feature
  5. 创建新的拉取请求

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java接口中的每个方法都是抽象的,但在抽象类中,我们也只能使用抽象方法   初始化Java中声明的、未初始化的变量会发生什么情况?   java BouncyCastle openPGP将字节[]数组加密为csv文件   在Java中将类A(和所有子类)映射到类B的实例的字典   RSA公钥编码,在Java和Android中,代码相同,结果不同   java在安卓中实现数字检测语音识别   java取消选择复选框   java如何在其他配置中重用Maven配置XML片段   java有没有一种有效的方法来检查HashMap是否包含映射到相同值的键?   spring处理程序调度失败;嵌套的例外是java。lang.NoClassDefFoundError:org/apache/http/client/HttpClient   带有ehcache的java多层缓存   java如何访问chromium(或任何其他浏览器)cookie   java通过将两个集合与spring data mongodb data中的条件合并来获取计数   安卓中R.java的语法错误