Notas da versão do teste de captura de tela da visualização do Compose

0.0.1-alpha14

Esta versão inclui as seguintes correções de bugs e melhorias de performance:

Problema Descrição
Problema 469819154 Foram corrigidos vazamentos de memória no renderizador do Compose.
Problema 470058578 Corrigimos travamentos na interface e erros de memória ao atualizar imagens de referência.
Problema 422412664 Correção dos erros "a linha de comando excede os limites do sistema operacional" no Windows e no GitHub Actions.
Problema 437223807 Correção de problemas de resolução de recursos e ativos em projetos de vários módulos.
Problema 464899800 Correção de um conflito de plug-in do Gradle causado por uma colisão de nomes em version.properties.
Problema 482433854 Correção de erros de inicialização para elementos combináveis usando kotlin-reflect ou serialização.

0.0.1-alpha13

Esta versão inclui:

  • Compatibilidade com JDK 17 ou versões mais recentes.
  • Correções de bugs e melhor integração com o Android Studio.

0.0.1-alpha12

Esta versão inclui:

  • Compatibilidade com o Plug-in do Android para Gradle (AGP) 9.0.
  • Suporte para execução de testes de captura de tela no JDK 24 e versões mais recentes.
  • Suporte para configurar o tamanho máximo do heap.
  • Correção de falhas de renderização e melhoria da estabilidade do teste.
  • Melhoramos os relatórios para incluir a diferença percentual e outros metadados relacionados a imagens novas e de referência.

0.0.1-alpha11

Esta versão inclui:

  • Compatibilidade com o Plug-in do Android para Gradle (AGP) 8.13.
  • Adicionamos suporte para analisar elementos gráficos XML com valores decimais, independente da localidade da máquina host.
  • Para uma máquina host que usa o JDK 24 ou mais recente, o JDK compatível (11 a 23) será selecionado, desde que um esteja instalado.

0.0.1-alpha10

Esta versão inclui:

  • A partir dessa versão, é necessário marcar todas as funções de prévia com a anotação @PreviewTest. As prévias sem a anotação não serão executadas.

  • O diretório de imagens de referência mudou de {module}/src/{variant}/screenshotTest/reference para {module}/src/screenshotTest{Variant}/reference. Isso garante que as imagens de referência geradas não façam parte do código de produção e estejam alinhadas com a estrutura de diretórios de outros tipos de teste.

  • A tarefa {variant}PreviewScreenshotRender é removida. A renderização de imagens é migrada para o mecanismo de teste do JUnit.

  • A tarefa update{Variant}ScreenshotTest compara novas imagens de renderização com imagens de referência antes de atualizar. Ele só atualiza imagens que têm diferenças maiores que um limite especificado. A flag de linha de comando --updateFilter foi removida.

0.0.1-alpha06

Esta versão inclui:

Limite de diferença de imagem: essa nova configuração global permite ter um controle mais preciso sobre as comparações de capturas de tela. Para configurar, atualize o build.gradle.kts do módulo:

    testOptions {
        screenshotTests {
            imageDifferenceThreshold = 0.0001f // 0.01%
        }
    }

Esse limite será aplicado a todos os testes de captura de tela definidos no módulo.

  • Correções de bugs: alguns bugs do renderizador do Compose e suporte adicionado para o Compose vazio.
  • Melhorias de performance: o algoritmo de diferenciação de imagens foi atualizado para ser mais rápido.