Olá. Estou fazendo um teste de uma classe minha, mas tenho métodos que tem vários casos de testes. Por causa disso eu ficava repetindo o nome do método em todo caso de teste, e acabava ficando meio desorganizado visualmente. Digo desorganizado, porque, mesmo que esteja tudo em ordem, você tem que ficar lendo o nome de cada caso de teste pra ver quando está testando um outro método.
Então achei um lugar falando que posso fazer uma classe por método e agrupar os testes dentro dela. Ficaria assim:
class Test_get_bar:
def test_should_return_bar(self):
assert False
def test_should_return_foo_if_param_is_false(self):
assert False
class Test_get_foo:
def test_should_return_foo(self):
assert False
def test_should_return_None_if_param_is_false(self):
assert False
Em vez de:
def test_get_bar_should_return_bar(self):
assert False
def test_get_bar_should_return_foo_if_param_is_false(self):
assert False
def test_get_foo_should_return_foo(self):
assert False
def test_get_foo_should_return_None_if_param_is_false(self):
assert False
Isso é uma boa ou má prática? Se for má prática, qual seria a boa?