测试statsd客户端

nti.fakestatsd的Python项目详细描述


实体发票状态d

Latest releaseSupported Python versionshttps://travis-ci.org/NextThought/nti.fakestatsd.svg?branch=masterhttps://coveralls.io/repos/github/NextThought/nti.fakestatsd/badge.svgDocumentation Status

nti.fakestatsd是一个测试客户机,用于验证statsd度量 由perfmetrics发出。

很容易创建用于测试的新客户端:

>>> fromnti.fakestatsdimportFakeStatsDClient>>> test_client=FakeStatsDClient()

此客户端公开的公共接口与 perfmetrics.statsd.statsdclient。例如,我们可以增加 计数器、设置仪表等:

>>> test_client.incr('request_c')>>> test_client.gauge('active_sessions',320)

与perfmetrics.statsd.statsdclient不同,fakestatsdclient 跟踪将要发送的statsd数据包。这个信息是 在我们的test_client中公开为原始statsd包,以及 方便此信息也被解析为~。metric 物体。有关完整的详细信息,请参见~.fakestatsdclient~.metric

>>> test_client.packets['request_c:1|c', 'active_sessions:320|g']
>>> test_client.metrics[<nti.fakestatsd.metric.Metric object at ...>, <nti.fakestatsd.metric.Metric object at ...>]

为了验证度量,我们提供了一组hamcrest匹配器 在测试断言中:

>>> fromhamcrestimportassert_that>>> fromhamcrestimportcontains>>> fromnti.fakestatsd.matchersimportis_metric>>> fromnti.fakestatsd.matchersimportis_gauge>>> assert_that(test_client,... contains(is_metric('c','request_c','1'),... is_gauge('active_sessions','320')))>>> assert_that(test_client,... contains(is_gauge('request_c','1'),... is_gauge('active_sessions','320')))Traceback (most recent call last):
...AssertionError:
Expected: a sequence containing [Metric of form <request_c:1|g>, Metric of form <active_sessions:320|g>]
     but: item 0: was <request_c:1|c>

有关完整的详细信息和变更日志,请参见documentation

更改

0.0.2(2018-10-26)

  • 度量类型s现在作为不同类型处理。见issue 6
  • 度量值现在总是本机字符串。见issue 2
  • 重组并记录公共对象。见issue 1
  • 添加方便的汉克雷斯特匹配。见issue 1

0.0.1(2018-10-12)

  • 第一个pypi版本。

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

推荐PyPI第三方库


热门话题
java如何运行一个在播放歌曲的同时创建和更改UI的方法?   eclipse错误:无法找到或加载主类Java,因为类文件anme和类名不同?   两个数字相加得到一个值的java算法   java我可以更改字符串吗?   java Hibernate 5.2:以编程方式从其他jar加载映射   java如何访问随机跳转到固定位置的二进制文件   java是解析器实现中文档的功能   Javasocket的两端齐平   java查找将两个非常大的整数之和除以相等块的步骤   java如何在Restlet中调用带超时的异步HTTP客户端   java如何从servlet请求将hashmap传递给jsp。塞塔提布特   java Spring MVC HTTP状态500–内部服务器错误,Servlet。servlet[dispatcher]的init()引发异常   java即使没有alpha通道,如何将PNGFiles加载为ARGB_8888?   java将subscribe的返回类型映射到其他类型   javascript如何在安卓 WebView中启用longpress操作下载图像?   java将字符串作为hashmap值的一部分添加到StringList中   JavaSpringAOP:代表类型声明其他方法或字段   Java将二进制序列转换为字符   java使用ApachePOI获取最后一行值   为什么要在FPS(每秒帧数)跟踪器中添加时间?(爪哇)