Unit Test Generator
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Facilidade para iniciantes
- 25/100
Direção de pesquisa
Comece revisando project_template e requirements-dev.txt e, em seguida, compare as duas abordagens propostas: um teste genérico para modelos baseados em CoderedPage ou um comando de gerenciamento maketests inspirado em makemigrations. Confirme o escopo e as ferramentas de teste antes de implementar; considera-se concluído quando houver um ponto de partida documentado e utilizável para testes de modelos, com cobertura do comportamento básico pretendido.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
As part of the project_template, I think it would be beneficial to also create a template for unit tests, to instantly provide some minimal coverage and to make it as easy as possible for developers to get started writing more advanced tests.
The biggest barrier to entry is often times just setting all the test framework up, and remembering how to do it.
Two ideas here, not necessarily mutually exclusive:
-
A generic test which loads all known models based on CoderedPage (we already have this list). Loops through them and creates an object with a title and some other basic fields, and asserts a successful GET response. The advantage is that you get free unit tests; the disadvantage is that it would still require writing custom unit tests for actual functionality.
-
Similar to
makemigrations, a management commandmaketestswhich creates a boilerplate unit test file for each model that doesn't already have a test file. This would be super easy to implement as it could essentially just copy a python template into the folder. The result would be a basic unit test similar to 1 above, but with the intention that the developer can start customizing it to do more.
As part of this we would also need to provide test tooling in requirements-dev.txt, similar to how the sass template works.
While 1 above is a bit "cooler", I think 2 is a more useful approach, as it would give the same coverage as 1, but be a lot easier to understand and add to over time.
- Linguagem predominante
- Python
- Estrelas
- 763
- Forks
- 154
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Tem um modelo de pull request
- Sem guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de coderedcorp/coderedcms
-
Type: Bug
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 78/100
coderedcorp/coderedcms#714 ·
-
Typo in accordion_block.htmlAbertaType: Bug
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 65/100
coderedcorp/coderedcms#711 ·
-
Type: Bug
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 45/100
coderedcorp/coderedcms#713 · 1 comentário ·
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 55/100
coderedcorp/coderedcms#710 · 4 comentários ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 58/100
coderedcorp/coderedcms#709 ·
Todas as issues de coderedcorp/coderedcms
Issues semelhantes
-
bug server
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
sportsdataverse/sportsdataverse-py#641 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
googleapis/google-cloud-python#18532 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
Mantenedores costumam responder em até 1 dia