Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

Logs before rerun appear in html report

Aberta
#787 8 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
3/5
Tempo estimado
1-2 dias
Facilidade para iniciantes
35/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
python
Domínio
testing

Direção de pesquisa

Comece localizando _process_logs e o hook de processamento de relatórios do pytest usado pelo plugin HTML; em seguida, reproduza o problema com o teste fornecido e pytest --reruns 1 --html=report.html. A tarefa estará concluída quando o relatório gerado contiver apenas os logs da tentativa de teste relevante, em vez dos logs de ambas as execuções.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

import logging

logger = logging.getLogger(__name__)
logger.setLevel(logging.DEBUG)
seq_num = 0

def seq():
  global seq_num
  seq_num += 1
  return seq_num

def test_fail():
  logger.info(f'Test log {seq()}')
  assert False

pytest --reruns 1 --html=report.html

The report has logs of both runs:

def test_fail():
      logger.info(f'Test log {seq()}')
>     assert False
E     assert False

test_my.py:17: AssertionError

------------------------------ Captured log call -------------------------------
INFO     test_my:test_my.py:16 Test log 1


------------------------------ Captured log call -------------------------------
INFO     test_my:test_my.py:16 Test log 2

It looks like there is logic in _process_logs to skip rerun logs, but this function is not called (maybe it was changed in pytest).

    # Don't add captured output to reruns
    if report.outcome != "rerun":
Linguagem predominante
Python
Estrelas
781
Forks
260
Métricas de merge de PRs
Nenhum PR com merge em 30d

Preparar o ambiente

Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de pytest-dev/pytest-html

Todas as issues de pytest-dev/pytest-html

Issues semelhantes

Mais issues de Python

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.