A resposta do cliente de teste de unidade do Django tem contexto vazio

Eu tenho um teste de unidade que está falhando em uma afirmação que passa em outro teste na mesma classe de caso de teste.

Aqui está o teste de aprovação:

def test_home(self):
    c = Client()
    resp = c.get('/')
    self.assertEqual(resp.status_code, 200)
    self.assertTrue('a_formset' in resp.context)

Aqui está o teste com falha:

def test_number_initial_number_of_forms(self):
    c = Client()
    resp = c.get('/')
    self.assertEqual(resp.context['a_formset'].total_form_count(), 1)

No segundo teste, recebo o erroTypeError: 'NoneType' object has no attribute '__getitem__'.

Se eu executar o segundo teste como

def test_number_initial_number_of_forms(self):
    c = Client()
    resp = c.get('/')
    self.assertTrue('a_formset' in resp.context)
    self.assertEqual(resp.context['a_formset'].total_form_count(), 1)

Eu recebo o erroTypeError: argument of type 'NoneType' is not iterable. Confirmei por meio de instruções de impressão no segundo teste que o response.content contém a página que espero obter, que o código de status está correto e que o modelo está correto. Mas o contexto da resposta é consistentementeNone no segundo teste.

Estou executando meus testes unitários do Django por meio da interface padrão "python manage.py test ...", então não acredito que estou correndo para o "o contexto está vazio do shell" questão.

O que está acontecendo com isso?

Editar:

Se eu adicionarprint type(resp.context['a_formset']) para cada teste, para o teste de trabalho eu recebo<class 'django.forms.formsets.AFormFormSet'>. Para o teste não funcional, receboTypeError: 'NoneType' object has no attribute '__getitem__' novamente.

questionAnswers(2)

yourAnswerToTheQuestion