Skip to content
This repository has been archived by the owner on Apr 2, 2024. It is now read-only.

Commit

Permalink
Add a TestResult.get_url_metrics method.
Browse files Browse the repository at this point in the history
It's returning the metrics for a specific URL.
  • Loading branch information
almet committed Aug 19, 2013
1 parent 2f24929 commit 58e111f
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 1 deletion.
7 changes: 7 additions & 0 deletions loads/test_result.py
Expand Up @@ -175,6 +175,13 @@ def hits_success_rate(self, url=None, series=None):
else:
return 0

def get_url_metrics(self):
urls = defaultdict(dict)
for url in self.urls:
for metric in ('average_request_time', 'hits_success_rate'):
urls[url][metric] = getattr(self, metric)(url)
return urls

def tests_per_second(self):
delta = self.stop_time - self.start_time
return self.nb_tests / total_seconds(delta)
Expand Down
21 changes: 20 additions & 1 deletion loads/tests/test_test_result.py
@@ -1,7 +1,10 @@
from loads.test_result import TestResult, Hit, Test
from unittest import TestCase
from datetime import datetime, timedelta

from mock import Mock

from loads.test_result import TestResult, Hit, Test

TIME1 = datetime(2013, 5, 14, 0, 51, 8)
TIME2 = datetime(2013, 5, 14, 0, 53, 8)
_1 = timedelta(seconds=1)
Expand Down Expand Up @@ -181,6 +184,22 @@ def test_requests_per_second_if_not_started(self):
test_result = TestResult()
self.assertEquals(test_result.requests_per_second(), 0)

def test_get_url_metrics(self):
test_result = TestResult()
test_result.average_request_time = Mock(return_value=0.5)
test_result.hits_success_rate = Mock(return_value=0.9)
test_result.add_hit(**self._get_data('http://notmyidea.org'))
test_result.add_hit(**self._get_data('http://lolnet.org'))

metrics = test_result.get_url_metrics()
self.assertEquals(metrics['http://notmyidea.org'], {
'average_request_time': 0.5,
'hits_success_rate': 0.9})

self.assertEquals(metrics['http://lolnet.org'], {
'average_request_time': 0.5,
'hits_success_rate': 0.9})


class TestHits(TestCase):

Expand Down

0 comments on commit 58e111f

Please sign in to comment.