If I understand correctly, if the number of request-response exchanges is greater than AUTOUNIT_MAX_FIXTURES_PER_CALLBACK, the request-response pair that will be created as fixture is selected randomly.
I think there is a case where user needs to only add fixtures and not overwriting existing ones. Usually, this is the case when user encounters new layout variation or new case to handle. On this case, user can:
- Enable Autounit.
- Run the spider using a special argument so it will only crawl pages with the new layout variation/new case.
- Autounit will not override existing fixtures but will only do addition.
I am proposing a new setting to determine the behaviour of Autounit, something like AUTOUNIT_FIXTURE_GENERATION with value either "overwrite" (default) or "only_add". I can try to implement this feature.