Пример #1
0
 def test_z_score_when_control_and_alternative_have_perfect_conversion(self):
     experiment = Experiment.find_or_create(
         self.redis, 'link_color', 'blue', 'red')
     experiment.save()
     control = Alternative(self.redis, 'blue', 'link_color')
     control.completed_count = 10
     control.participant_count = 10
     alternative = Alternative(self.redis, 'red', 'link_color')
     alternative.completed_count = 8
     alternative.participant_count = 8
     assert alternative.z_score is None
Пример #2
0
 def test_z_score_when_control_and_alternative_have_perfect_conversion(
         self):
     experiment = Experiment.find_or_create(self.redis, 'link_color',
                                            'blue', 'red')
     experiment.save()
     control = Alternative(self.redis, 'blue', 'link_color')
     control.completed_count = 10
     control.participant_count = 10
     alternative = Alternative(self.redis, 'red', 'link_color')
     alternative.completed_count = 8
     alternative.participant_count = 8
     assert alternative.z_score is None
Пример #3
0
 def test_can_be_reset(self):
     alternative = Alternative(self.redis, 'Basket', 'basket_text')
     alternative.participant_count = 10
     alternative.completed_count = 4
     alternative.reset()
     assert alternative.participant_count == 0
     assert alternative.completed_count == 0
Пример #4
0
 def test_can_be_reset(self):
     alternative = Alternative(self.redis, 'Basket', 'basket_text')
     alternative.participant_count = 10
     alternative.completed_count = 4
     alternative.reset()
     assert alternative.participant_count == 0
     assert alternative.completed_count == 0
Пример #5
0
    def test_z_score(self):
        Experiment.find_or_create(self.redis, 'Treatment', 'Control',
                                  'Treatment A', 'Treatment B', 'Treatment C')

        control = Alternative(self.redis, 'Control', 'Treatment')
        control.participant_count = 182
        control.completed_count = 35

        treatment_a = Alternative(self.redis, 'Treatment A', 'Treatment')
        treatment_a.participant_count = 180
        treatment_a.completed_count = 45

        treatment_b = Alternative(self.redis, 'Treatment B', 'Treatment')
        treatment_b.participant_count = 189
        treatment_b.completed_count = 28

        treatment_c = Alternative(self.redis, 'Treatment C', 'Treatment')
        treatment_c.participant_count = 188
        treatment_c.completed_count = 61

        assert control.z_score is None
        assert round(treatment_a.z_score, 2) == 1.33
        assert round(treatment_b.z_score, 2) == -1.13
        assert round(treatment_c.z_score, 2) == 2.94
Пример #6
0
    def test_z_score(self):
        Experiment.find_or_create(self.redis, 'Treatment',
            'Control', 'Treatment A', 'Treatment B', 'Treatment C')

        control = Alternative(self.redis, 'Control', 'Treatment')
        control.participant_count = 182
        control.completed_count = 35

        treatment_a = Alternative(self.redis, 'Treatment A', 'Treatment')
        treatment_a.participant_count = 180
        treatment_a.completed_count = 45

        treatment_b = Alternative(self.redis, 'Treatment B', 'Treatment')
        treatment_b.participant_count = 189
        treatment_b.completed_count = 28

        treatment_c = Alternative(self.redis, 'Treatment C', 'Treatment')
        treatment_c.participant_count = 188
        treatment_c.completed_count = 61

        assert control.z_score is None
        assert round(treatment_a.z_score, 2) == 1.33
        assert round(treatment_b.z_score, 2) == -1.13
        assert round(treatment_c.z_score, 2) == 2.94
Пример #7
0
 def test_conversion_rate_does_something(self):
     alternative = Alternative(self.redis, 'Basket', 'basket_text')
     alternative.participant_count = 10
     alternative.completed_count = 4
     assert alternative.conversion_rate == 0.4
Пример #8
0
 def test_conversion_rate_does_something(self):
     alternative = Alternative(self.redis, 'Basket', 'basket_text')
     alternative.participant_count = 10
     alternative.completed_count = 4
     assert alternative.conversion_rate == 0.4