当前位置: 首页>>代码示例>>Python>>正文


Python stats.StatsEntry类代码示例

本文整理汇总了Python中locust.stats.StatsEntry的典型用法代码示例。如果您正苦于以下问题:Python StatsEntry类的具体用法?Python StatsEntry怎么用?Python StatsEntry使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了StatsEntry类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: test_response_times_not_cached_if_not_enabled

 def test_response_times_not_cached_if_not_enabled(self):
     s = StatsEntry(self.stats, "/", "GET")
     s.log(11, 1337)
     assert None == s.response_times_cache
     s.last_request_timestamp -= 1
     s.log(666, 1337)
     assert None == s.response_times_cache
开发者ID:sanga,项目名称:locust,代码行数:7,代码来源:test_stats.py

示例2: test_percentile

    def test_percentile(self):
        s = StatsEntry(self.stats, "percentile_test", "GET")
        for x in xrange(100):
            s.log(x, 0)

        assert s.get_response_time_percentile(0.5) == 50
        assert s.get_response_time_percentile(0.6) == 60
        assert s.get_response_time_percentile(0.95) == 95
开发者ID:sanga,项目名称:locust,代码行数:8,代码来源:test_stats.py

示例3: test_percentile

    def test_percentile(self):
        s = StatsEntry(self.stats, "percentile_test", "GET")
        for x in xrange(100):
            s.log(x, 0)

        self.assertEqual(s.get_response_time_percentile(0.5), 50)
        self.assertEqual(s.get_response_time_percentile(0.6), 60)
        self.assertEqual(s.get_response_time_percentile(0.95), 95)
开发者ID:LihuaWu,项目名称:locust,代码行数:8,代码来源:test_stats.py

示例4: test_error_grouping_errors_with_memory_addresses

 def test_error_grouping_errors_with_memory_addresses(self):
     # reset stats
     self.stats = RequestStats()
     class Dummy(object):
         pass
     
     s = StatsEntry(self.stats, "/", "GET")
     s.log_error(Exception("Error caused by %r" % Dummy()))
     s.log_error(Exception("Error caused by %r" % Dummy()))
     
     self.assertEqual(1, len(self.stats.errors))
开发者ID:cgoldberg,项目名称:locust,代码行数:11,代码来源:test_stats.py

示例5: test_response_times_cached

 def test_response_times_cached(self):
     s = StatsEntry(self.stats, "/", "GET", use_response_times_cache=True)
     assert 1 == len(s.response_times_cache)
     s.log(11, 1337)
     assert 1 == len(s.response_times_cache)
     s.last_request_timestamp -= 1
     s.log(666, 1337)
     assert 2 == len(s.response_times_cache)
     assert CachedResponseTimes(
         response_times={11:1}, 
         num_requests=1,
     ) == s.response_times_cache[s.last_request_timestamp-1]
开发者ID:sanga,项目名称:locust,代码行数:12,代码来源:test_stats.py

示例6: test_response_times_cached

 def test_response_times_cached(self):
     s = StatsEntry(self.stats, "/", "GET", use_response_times_cache=True)
     self.assertEqual(1, len(s.response_times_cache))
     s.log(11, 1337)
     self.assertEqual(1, len(s.response_times_cache))
     s.last_request_timestamp -= 1
     s.log(666, 1337)
     self.assertEqual(2, len(s.response_times_cache))
     self.assertEqual(CachedResponseTimes(
         response_times={11:1}, 
         num_requests=1,
     ), s.response_times_cache[s.last_request_timestamp-1])
开发者ID:locustio,项目名称:locust,代码行数:12,代码来源:test_stats.py

示例7: test_serialize_through_message

    def test_serialize_through_message(self):
        """
        Serialize a RequestStats instance, then serialize it through a Message,
        and unserialize the whole thing again. This is done "IRL" when stats are sent
        from slaves to master.
        """
        s1 = StatsEntry(self.stats, "test", "GET")
        s1.log(10, 0)
        s1.log(20, 0)
        s1.log(40, 0)
        StatsEntry.unserialize(s1.serialize())

        data = Message.unserialize(Message("dummy", s1.serialize(), "none").serialize()).data
        u1 = StatsEntry.unserialize(data)

        self.assertEqual(20, u1.median_response_time)
开发者ID:kaeawc,项目名称:locust,代码行数:16,代码来源:test_stats.py

示例8: test_aggregation_with_rounding

    def test_aggregation_with_rounding(self):
        s1 = StatsEntry(self.stats, "round me!", "GET")
        s1.log(122, 0)    # (rounded 120) min
        s1.log(992, 0)    # (rounded 990) max
        s1.log(142, 0)    # (rounded 140)
        s1.log(552, 0)    # (rounded 550)
        s1.log(557, 0)    # (rounded 560)
        s1.log(387, 0)    # (rounded 390)
        s1.log(557, 0)    # (rounded 560)
        s1.log(977, 0)    # (rounded 980)

        self.assertEqual(s1.num_requests, 8)
        self.assertEqual(s1.median_response_time, 550)
        self.assertEqual(s1.avg_response_time, 535.75)
        self.assertEqual(s1.min_response_time, 122)
        self.assertEqual(s1.max_response_time, 992)
开发者ID:locustio,项目名称:locust,代码行数:16,代码来源:test_stats.py

示例9: test_aggregation_with_rounding

    def test_aggregation_with_rounding(self):
        s1 = StatsEntry(self.stats, "round me!", "GET")
        s1.log(122, 0)    # (rounded 120) min
        s1.log(992, 0)    # (rounded 990) max
        s1.log(142, 0)    # (rounded 140)
        s1.log(552, 0)    # (rounded 550)
        s1.log(557, 0)    # (rounded 560)
        s1.log(387, 0)    # (rounded 390)
        s1.log(557, 0)    # (rounded 560)
        s1.log(977, 0)    # (rounded 980)

        assert s1.num_requests == 8
        assert s1.median_response_time == 550
        assert s1.avg_response_time == 535.75
        assert s1.min_response_time == 122
        assert s1.max_response_time == 992
开发者ID:sanga,项目名称:locust,代码行数:16,代码来源:test_stats.py

示例10: setUp

 def setUp(self):
     self.stats = RequestStats()
     self.stats.start_time = time.time()
     self.s = StatsEntry(self.stats, "test_entry", "GET")
     self.s.log(45, 0)
     self.s.log(135, 0)
     self.s.log(44, 0)
     self.s.log_error(Exception("dummy fail"))
     self.s.log_error(Exception("dummy fail"))
     self.s.log(375, 0)
     self.s.log(601, 0)
     self.s.log(35, 0)
     self.s.log(79, 0)
     self.s.log_error(Exception("dummy fail"))
开发者ID:LihuaWu,项目名称:locust,代码行数:14,代码来源:test_stats.py

示例11: test_error_grouping

 def test_error_grouping(self):
     # reset stats
     self.stats = RequestStats()
     
     s = StatsEntry(self.stats, "/some-path", "GET")
     s.log_error(Exception("Exception!"))
     s.log_error(Exception("Exception!"))
         
     self.assertEqual(1, len(self.stats.errors))
     self.assertEqual(2, list(self.stats.errors.values())[0].occurences)
     
     s.log_error(Exception("Another exception!"))
     s.log_error(Exception("Another exception!"))
     s.log_error(Exception("Third exception!"))
     self.assertEqual(3, len(self.stats.errors))
开发者ID:cgoldberg,项目名称:locust,代码行数:15,代码来源:test_stats.py

示例12: test_get_current_response_time_percentile

 def test_get_current_response_time_percentile(self):
     s = StatsEntry(self.stats, "/", "GET", use_response_times_cache=True)
     t = int(time.time())
     s.response_times_cache[t-10] = CachedResponseTimes(
         response_times={i:1 for i in xrange(100)},
         num_requests=200
     )
     s.response_times_cache[t-10].response_times[1] = 201
     
     s.response_times = {i:2 for i in xrange(100)}
     s.response_times[1] = 202
     s.num_requests = 300
     
     assert 95 == s.get_current_response_time_percentile(0.95)
开发者ID:sanga,项目名称:locust,代码行数:14,代码来源:test_stats.py

示例13: test_latest_total_response_times_pruned

 def test_latest_total_response_times_pruned(self):
     """
     Check that RequestStats.latest_total_response_times are pruned when execeeding 20 entries
     """
     s = StatsEntry(self.stats, "/", "GET", use_response_times_cache=True)
     t = int(time.time())
     for i in reversed(range(2, 30)):
         s.response_times_cache[t-i] = CachedResponseTimes(response_times={}, num_requests=0)
     assert 29 == len(s.response_times_cache)
     s.log(17, 1337)
     s.last_request_timestamp -= 1
     s.log(1, 1)
     assert 20 == len(s.response_times_cache)
     assert (
         CachedResponseTimes(response_times={17:1}, num_requests=1)) == (
         s.response_times_cache.popitem(last=True)[1]), (
     )
开发者ID:sanga,项目名称:locust,代码行数:17,代码来源:test_stats.py

示例14: TestRequestStats

class TestRequestStats(unittest.TestCase):
    def setUp(self):
        self.stats = RequestStats()
        self.stats.start_time = time.time()
        self.s = StatsEntry(self.stats, "test_entry", "GET")
        self.s.log(45, 0)
        self.s.log(135, 0)
        self.s.log(44, 0)
        self.s.log_error(Exception("dummy fail"))
        self.s.log_error(Exception("dummy fail"))
        self.s.log(375, 0)
        self.s.log(601, 0)
        self.s.log(35, 0)
        self.s.log(79, 0)
        self.s.log_error(Exception("dummy fail"))

    def test_percentile(self):
        s = StatsEntry(self.stats, "percentile_test", "GET")
        for x in xrange(100):
            s.log(x, 0)

        assert s.get_response_time_percentile(0.5) == 50
        assert s.get_response_time_percentile(0.6) == 60
        assert s.get_response_time_percentile(0.95) == 95

    def test_median(self):
        assert self.s.median_response_time == 79

    def test_total_rps(self):
        assert self.s.total_rps == 7

    def test_current_rps(self):
        self.stats.total.last_request_timestamp = int(time.time()) + 4
        assert self.s.current_rps == 3.5

        self.stats.total.last_request_timestamp = int(time.time()) + 25
        assert self.s.current_rps == 0

    def test_num_reqs_fails(self):
        assert self.s.num_requests == 7
        assert self.s.num_failures == 3

    def test_avg(self):
        assert self.s.avg_response_time == 187.71428571428572

    def test_reset(self):
        self.s.reset()
        self.s.log(756, 0)
        self.s.log_error(Exception("dummy fail after reset"))
        self.s.log(85, 0)

        assert self.s.total_rps == 2
        assert self.s.num_requests == 2
        assert self.s.num_failures == 1
        assert self.s.avg_response_time == 420.5
        assert self.s.median_response_time == 85
    
    def test_reset_min_response_time(self):
        self.s.reset()
        self.s.log(756, 0)
        assert 756 == self.s.min_response_time

    def test_aggregation(self):
        s1 = StatsEntry(self.stats, "aggregate me!", "GET")
        s1.log(12, 0)
        s1.log(12, 0)
        s1.log(38, 0)
        s1.log_error("Dummy exzeption")

        s2 = StatsEntry(self.stats, "aggregate me!", "GET")
        s2.log_error("Dummy exzeption")
        s2.log_error("Dummy exzeption")
        s2.log(12, 0)
        s2.log(99, 0)
        s2.log(14, 0)
        s2.log(55, 0)
        s2.log(38, 0)
        s2.log(55, 0)
        s2.log(97, 0)

        s = StatsEntry(self.stats, "GET", "")
        s.extend(s1)
        s.extend(s2)

        assert s.num_requests == 10
        assert s.num_failures == 3
        assert s.median_response_time == 38
        assert s.avg_response_time == 43.2

    def test_aggregation_with_rounding(self):
        s1 = StatsEntry(self.stats, "round me!", "GET")
        s1.log(122, 0)    # (rounded 120) min
        s1.log(992, 0)    # (rounded 990) max
        s1.log(142, 0)    # (rounded 140)
        s1.log(552, 0)    # (rounded 550)
        s1.log(557, 0)    # (rounded 560)
        s1.log(387, 0)    # (rounded 390)
        s1.log(557, 0)    # (rounded 560)
        s1.log(977, 0)    # (rounded 980)

#.........这里部分代码省略.........
开发者ID:sanga,项目名称:locust,代码行数:101,代码来源:test_stats.py

示例15: TestRequestStats

class TestRequestStats(unittest.TestCase):
    def setUp(self):
        self.stats = RequestStats()
        self.stats.start_time = time.time()
        self.s = StatsEntry(self.stats, "test_entry", "GET")
        self.s.log(45, 0)
        self.s.log(135, 0)
        self.s.log(44, 0)
        self.s.log_error(Exception("dummy fail"))
        self.s.log_error(Exception("dummy fail"))
        self.s.log(375, 0)
        self.s.log(601, 0)
        self.s.log(35, 0)
        self.s.log(79, 0)
        self.s.log_error(Exception("dummy fail"))

    def test_percentile(self):
        s = StatsEntry(self.stats, "percentile_test", "GET")
        for x in xrange(100):
            s.log(x, 0)

        self.assertEqual(s.get_response_time_percentile(0.5), 50)
        self.assertEqual(s.get_response_time_percentile(0.6), 60)
        self.assertEqual(s.get_response_time_percentile(0.95), 95)

    def test_median(self):
        self.assertEqual(self.s.median_response_time, 79)

    def test_total_rps(self):
        self.assertEqual(self.s.total_rps, 7)

    def test_current_rps(self):
        self.stats.last_request_timestamp = int(time.time()) + 4
        self.assertEqual(self.s.current_rps, 3.5)

        self.stats.last_request_timestamp = int(time.time()) + 25
        self.assertEqual(self.s.current_rps, 0)

    def test_num_reqs_fails(self):
        self.assertEqual(self.s.num_requests, 7)
        self.assertEqual(self.s.num_failures, 3)

    def test_avg(self):
        self.assertEqual(self.s.avg_response_time, 187.71428571428571428571428571429)

    def test_reset(self):
        self.s.reset()
        self.s.log(756, 0)
        self.s.log_error(Exception("dummy fail after reset"))
        self.s.log(85, 0)

        self.assertEqual(self.s.total_rps, 2)
        self.assertEqual(self.s.num_requests, 2)
        self.assertEqual(self.s.num_failures, 1)
        self.assertEqual(self.s.avg_response_time, 420.5)
        self.assertEqual(self.s.median_response_time, 85)

    def test_aggregation(self):
        s1 = StatsEntry(self.stats, "aggregate me!", "GET")
        s1.log(12, 0)
        s1.log(12, 0)
        s1.log(38, 0)
        s1.log_error("Dummy exzeption")

        s2 = StatsEntry(self.stats, "aggregate me!", "GET")
        s2.log_error("Dummy exzeption")
        s2.log_error("Dummy exzeption")
        s2.log(12, 0)
        s2.log(99, 0)
        s2.log(14, 0)
        s2.log(55, 0)
        s2.log(38, 0)
        s2.log(55, 0)
        s2.log(97, 0)

        s = StatsEntry(self.stats, "GET", "")
        s.extend(s1, full_request_history=True)
        s.extend(s2, full_request_history=True)

        self.assertEqual(s.num_requests, 10)
        self.assertEqual(s.num_failures, 3)
        self.assertEqual(s.median_response_time, 38)
        self.assertEqual(s.avg_response_time, 43.2)
    
    def test_serialize_through_message(self):
        """
        Serialize a RequestStats instance, then serialize it through a Message, 
        and unserialize the whole thing again. This is done "IRL" when stats are sent 
        from slaves to master.
        """
        s1 = StatsEntry(self.stats, "test", "GET")
        s1.log(10, 0)
        s1.log(20, 0)
        s1.log(40, 0)
        u1 = StatsEntry.unserialize(s1.serialize())
        
        data = Message.unserialize(Message("dummy", s1.serialize(), "none").serialize()).data
        u1 = StatsEntry.unserialize(data)
        
        self.assertEqual(20, u1.median_response_time)
开发者ID:LihuaWu,项目名称:locust,代码行数:100,代码来源:test_stats.py


注:本文中的locust.stats.StatsEntry类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。