Exemple #1
0
    def test_compute_statistics(self):
        def compute_statistics(values):
            statistics = PerfTest.compute_statistics(map(lambda x: float(x), values))
            return json.loads(json.dumps(statistics))

        statistics = compute_statistics([10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11])
        self.assertEqual(sorted(statistics.keys()), ['avg', 'max', 'median', 'min', 'stdev'])
        self.assertEqual(statistics['avg'], 10.5)
        self.assertEqual(statistics['min'], 1)
        self.assertEqual(statistics['max'], 20)
        self.assertEqual(statistics['median'], 10.5)
        self.assertEqual(compute_statistics([8, 9, 10, 11, 12])['avg'], 10)
        self.assertEqual(compute_statistics([8, 9, 10, 11, 12] * 4)['avg'], 10)
        self.assertEqual(compute_statistics([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19])['avg'], 10)
        self.assertEqual(PerfTest.compute_statistics([1, 5, 2, 8, 7])['median'], 5)
        self.assertEqual(PerfTest.compute_statistics([1, 6, 2, 8, 7, 2])['median'], 4)
        self.assertAlmostEqual(statistics['stdev'], math.sqrt(35))
        self.assertAlmostEqual(compute_statistics([1, 2, 3, 4, 5, 6])['stdev'], math.sqrt(3.5))
        self.assertAlmostEqual(compute_statistics([4, 2, 5, 8, 6])['stdev'], math.sqrt(5))
Exemple #2
0
 def compute_statistics(values):
     statistics = PerfTest.compute_statistics(map(lambda x: float(x), values))
     return json.loads(json.dumps(statistics))