You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
While working on the testing for group_rrobin, Lancaster and I found a potential bug within the test_rrobin_responses method where groups could be "unbalanced" based on their responses. This issue arose out of now closed issue 137 and currently open issue 184.
Add Detailed Comment with More Information
In order to better understand the way that the program grouped members of the class, we changed some example responses in test_group_method.py. Once we ran the program, we found that it tries to create groups with differing responses among group members for diversity and balancing purposes. However, during some of our tests we found that occasionally a group will be formed that is unbalanced. Specifically, we saw that a group was formed with two members whose responses were all "True" and another had none of these all "True" members. Previously, these sample students would each be placed in their own group alongside students with varying responses.
Steps to Reproduce Issue
In order to reproduce this issue, a short segment of code needs to be added to test_group_method.py which prints the members of each group to the terminal. Then, run the test and examine the responses in each group. The test may need to be run several times in order to see the issue (it occurred in approximately one of the ten tests that we ran).
"""Testing the grouping function according to responses"""
lst = [
["Dan", True, True, True],
["Jesse", True, True, True],
["Austin", True, True, True],
["Nick", False, True, False],
["Nikki", False, True, False],
["Maria", False, True, False],
["Jeff", True, False, False],
["Simon", True, False, False],
["Jon", True, False, False],
["Angie", False, False, True],
["Izaak", False, False, True],
["Jacob", False, False, True],
]
numgrps = 4
response_output = group_rrobin.group_rrobin_num_group(lst, numgrps)
assert len(response_output[0]) == 3
assert len(response_output) == numgrps
assert ["Dan", True, True, True] not in response_output[2]
> assert ["Jesse", True, True, True] not in response_output[0]
E AssertionError: assert left not in right failed.
E Showing split diff:
E
E left: ['Jesse', True, True, True]
E right: [['Dan', True, True, True],
E ['Jesse', True, True, True],
E ['Nick', False, True, False]]
The screenshot above shows a test that failed while working on some more re-factorization/enhancement of group_rrobin.py, but shows that an unbalanced group was created.
@Lancasterwu also mentioned that we might want to look at the impact that the number of Booleans has on the randomization of groups. Currently there are three Booleans in the test cases and four Boolean values in the student input CSV file.
Description of the Issue
While working on the testing for
group_rrobin
, Lancaster and I found a potential bug within thetest_rrobin_responses
method where groups could be "unbalanced" based on their responses. This issue arose out of now closed issue 137 and currently open issue 184.Add Detailed Comment with More Information
In order to better understand the way that the program grouped members of the class, we changed some example responses in
test_group_method.py
. Once we ran the program, we found that it tries to create groups with differing responses among group members for diversity and balancing purposes. However, during some of our tests we found that occasionally a group will be formed that is unbalanced. Specifically, we saw that a group was formed with two members whose responses were all "True" and another had none of these all "True" members. Previously, these sample students would each be placed in their own group alongside students with varying responses.Steps to Reproduce Issue
In order to reproduce this issue, a short segment of code needs to be added to
test_group_method.py
which prints the members of each group to the terminal. Then, run the test and examine the responses in each group. The test may need to be run several times in order to see the issue (it occurred in approximately one of the ten tests that we ran).The screenshot above shows a test that failed while working on some more re-factorization/enhancement of
group_rrobin.py
, but shows that an unbalanced group was created.Assigned Developers
@Lancasterwu @everitt-andrew @shafferz
The text was updated successfully, but these errors were encountered: