Ácido3

Da Wikipédia, a enciclopédia livre
Ir para a navegação Saltar para pesquisar

Ácido3
Referência Acid3.png
A renderização de referência para Acid3
Tipo de site
Teste de padrões da web
Disponível emInglês
ProprietárioO Projeto de Padrões da Web
Criado porIan Hickson
URLwpt .live /acid /acid3 /test .html
ComercialNão
CadastroNão
Lançado3 de março de 2008 ; 14 anos atrás ( 2008-03-03 )
Status atualConectados

O teste Acid3 é uma página de teste da Web do Projeto de Padrões da Web que verifica a conformidade de um navegador da Web com elementos de vários padrões da Web , particularmente o Document Object Model (DOM) e JavaScript .

Se o teste for bem-sucedido, os resultados do teste Acid3 exibirão um contador de frações gradualmente crescente abaixo de uma série de retângulos coloridos. O número de subtestes aprovados indicará a porcentagem que será exibida na tela. Essa porcentagem não representa uma porcentagem real de conformidade, pois o teste realmente não acompanha os subtestes que foram realmente iniciados (supõe-se que 100). Além disso, o navegador também precisa renderizar a página exatamente como a página de referência é renderizada no mesmo navegador. Assim como o texto do teste Acid2 , o texto da renderização de referência Acid3 não é um bitmap, para permitir certas diferenças na renderização da fonte.

Acid3 estava em desenvolvimento desde abril de 2007, [1] e lançado em 3 de março de 2008. [2] O principal desenvolvedor foi Ian Hickson , um funcionário do Google que também escreveu o teste Acid2. Acid2 focou principalmente em Cascading Style Sheets (CSS), mas este terceiro teste Acid também foca em tecnologias usadas em sites altamente interativos característicos da Web 2.0 , como ECMAScript e DOM Nível 2 . Alguns subtestes também dizem respeito a Scalable Vector Graphics (SVG), Extensible Markup Language ( XML ) e URIs de dados . Inclui vários elementos do CSS2recomendação que foi posteriormente removida em CSS2.1 , [ citação necessária ] mas reintroduzida em rascunhos de trabalho CSS3 do World Wide Web Consortium (W3C) que ainda não chegaram às recomendações candidatas.

Em abril de 2017, as especificações atualizadas divergiram do teste, de modo que as versões mais recentes do Google Chrome , Safari e Mozilla Firefox não passam mais no teste conforme escrito. [3] Hickson reconhece que alguns aspectos do teste foram controversos e escreveu que o teste "não reflete mais o consenso dos padrões da Web que pretende testar, especialmente quando se trata de problemas que afetam navegadores móveis". [4]

Teste

A parte principal do Acid3 é escrita em ECMAScript ( JavaScript ) e consiste em 100 subtestes em seis grupos chamados "buckets", incluindo quatro subtestes especiais (0, 97, 98 e 99). [5]

  • Bucket 1: DOM Traversal, DOM Range, HTTP
  • Grupo 2: DOM2 Core e eventos DOM2
  • Grupo 3: visualizações DOM2, estilo DOM2, seletores CSS 3 e consultas de mídia [6]
  • Bucket 4: Comportamento de tabelas e formulários HTML quando manipulados por script e HTML DOM2
  • Balde 5: Testes da competição Acid3 (SVG, [7] HTML, SMIL , Unicode , …)
  • Grupo 6: ECMAScript

Os critérios de conformidade exigem que o teste seja executado com as configurações padrão de um navegador. A renderização final deve ter uma pontuação de 100/100 e deve ter pixels idênticos à renderização de referência. [8] Em navegadores projetados para computadores pessoais, a animação também deve ser suave (não levando mais de 33 ms para cada subteste em hardware de referência equivalente a um laptop Apple top de linha ), [9] embora mais lento desempenho em um dispositivo lento não implica em não conformidade. [10]

Acid3 renderizado pelo Fennec 1.0 alpha 1. Os buckets 2, 4 e 6 passam em todos os 16 subtestes, os buckets 1 e 3 passam em mais de 10 subtestes enquanto o bucket 5 passa em mais de 5 subtestes.

Para passar no teste, o navegador também deve exibir um favicon genérico na barra de ferramentas do navegador, não a imagem do favicon do servidor web Acid3. O servidor Acid3 quando solicitado favicon.icodá um código de resposta 404 , mas com dados de imagem no corpo. Isso testa se o navegador da Web lida corretamente com o código de erro 404 ao buscar o favicon, tratando isso como uma falha e exibindo o ícone genérico. [11]

Quando o teste estiver em execução, os retângulos serão adicionados à imagem renderizada; o número de subtestes passados ​​no bucket determinará a cor dos retângulos.

  • 0 subtestes aprovados: Nenhum retângulo mostrado.
  • 1–5 subtestes aprovados: Retângulo preto.
  • 6–10 subtestes aprovados: Retângulo cinza.
  • 11–15 subtestes aprovados: Retângulo de prata.
  • Todos os 16 subtestes foram aprovados: Retângulo colorido (da esquerda para a direita: vermelho, laranja, amarelo, limão, azul, roxo).

Observe que o Acid3 não exibe exatamente quantos subtestes foram aprovados em um bucket. Por exemplo, 3 subtestes passando e 4 subtestes passando no bucket 2 renderizariam um retângulo preto.

Resultados detalhados

Acid3 renderizado pelo Internet Explorer 8.0 (antes da atualização de setembro de 2011 do teste Acid3). 20/100, teste falhou.

Depois que a página de teste do Acid3 for completamente renderizada, a letra 'A' na palavra "Acid3" pode ser clicada para ver um alerta (ou shift-click para uma nova janela) explicando exatamente quais subtestes falharam e qual foi a mensagem de erro. Caso um dos 100 testes tenha sido aprovado, mas tenha demorado muito, o relatório inclui os resultados de tempo para aquele único teste. O alerta informa o tempo total de todo o teste Acid3.

Captura de tela do Chromium 71 executando o teste Acid3 em dezembro de 2018.

Para renderizar o teste corretamente, os agentes de usuário precisam implementar as especificações CSS 3 Text Shadows e CSS 2.x Downloadable Fonts , que estão atualmente em consideração pelo W3C para serem padronizadas. Isso é necessário, pois o teste usa uma fonte TrueType personalizada , chamada "AcidAhemTest", para cobrir um quadrado vermelho de 20 x 20. O suporte a fontes Truetype, no entanto, não é exigido pela especificação CSS. Um navegador que suporta apenas fontes OpenType com contornos CFF ou fontes OpenType incorporadas pode suportar o padrão CSS, mas falha no teste Acid3. O glifo, quando renderizado pela fonte baixada, é apenas um quadrado, tornado branco com CSS e, portanto, invisível. [12]

Além disso, o teste também usa imagens codificadas em Base64 , alguns seletores mais avançados, valores de cores CSS 3 ( HSLA ), bem como seletores e valores falsos que devem ser ignorados.

Desenvolvimento e impacto

O funcionário do Google, Ian Hickson, começou a trabalhar no teste em abril de 2007, mas o desenvolvimento progrediu lentamente. Em dezembro de 2007, o trabalho recomeçou e o projeto recebeu atenção pública em 10 de janeiro de 2008, quando foi mencionado em blogs por Anne van Kesteren . [13] Na época o projeto residia em uma URL mostrando claramente sua natureza experimental: "http://www.hixie.ch/tests/evil/acid/003/NOT_READY_PLEASE_DO_NOT_USE.html" Apesar do aviso na URL, o teste recebeu ampla atenção na comunidade de desenvolvimento web. Naquela época, apenas 84 subtestes haviam sido feitos e, em 14 de janeiro, Ian Hickson anunciou uma competição para preencher os 16 que faltavam. [14]

Os seguintes desenvolvedores contribuíram para o teste final através desta competição:

  • Sylvain Pasche: subtestes 66 e 67: DOM.
  • David Chan: subteste 68: UTF-16/UCS-2 .
  • Simon Pieters (Opera) e Anne van Kesteren (Opera): subteste 71: análise de HTML.
  • Jonas Sicking (Mozilla) e Garrett Smith: subteste 72: modificação dinâmica dos nós de texto dos blocos de estilo.
  • Jonas Sicking (Mozilla): subteste 73: Eventos aninhados.
  • Erik Dahlström (Opera): subtestes 74 a 78: SVG e SMIL.
  • Cameron McCormack ( biblioteca Batik SVG): subteste 79: fontes SVG.

Mesmo antes de seu lançamento oficial, o impacto do Acid3 no desenvolvimento do navegador foi dramático. Em particular, a pontuação do WebKit subiu de 60 para 87 em menos de um mês. [15]

O teste foi lançado oficialmente em 3 de março de 2008. [2] Esperava-se que um guia e comentários fossem lançados dentro de alguns meses, [15] mas, em março de 2011, apenas o comentário havia sido divulgado. O anúncio de que o teste está completo significa apenas que ele deve ser considerado "estável o suficiente" para uso real. Alguns problemas e bugs foram encontrados com o teste, e ele foi modificado para corrigi-los. [16] [17] Em 26 de março de 2008 - o dia em que as equipes Opera e WebKit anunciaram uma pontuação de 100/100 - os desenvolvedores do WebKit contataram Hickson sobre um bug crítico no Acid3 que presumivelmente permitiu que uma violação do padrão SVG 1.1 fosse aprovada. Hickson corrigiu o bug com a ajuda de Cameron McCormack, membro do Grupo de Trabalho SVG do W3C.[18] [19]

Navegadores baseados em Chrome, Presto e WebKit

Em 2008, as versões de desenvolvimento dos mecanismos de layout Presto [20] [21] e WebKit [19] [22] (usados ​​pelo Opera e Safari respectivamente) pontuaram 100/100 no teste e renderizaram a página de teste corretamente. Na época, nenhum navegador usando os mecanismos de layout Presto ou WebKit passou no aspecto de desempenho do teste. [23] [24]

Google Chrome e Opera Mobile [25] apresentaram uma pontuação de 100/100. [26] Preocupações de segurança com fontes para download atrasaram a aprovação do Chrome. [27]

A versão 68 e posterior do Chrome obtém uma pontuação de 97/100.

Firefox

Acid3 feito no Firefox 67.0.2.

Na época do lançamento do Acid3, os desenvolvedores do Mozilla Firefox estavam se preparando para o lançamento iminente do Firefox 3 , focando mais na estabilidade do que no sucesso do Acid3. Consequentemente, o Firefox 3 teve uma pontuação de 71. [28] O Firefox 3.5 marcou 93/100, e o Firefox 3.6 marcou 94/100. Inicialmente, o Firefox 4 marcou 97/100, porque não suportava fontes SVG. Mais tarde, o Firefox 4 marcou 100/100, porque os testes de fonte SVG foram removidos do Acid3.

De acordo com o funcionário da Mozilla, Robert O'Callahan, o Firefox não suportava fontes SVG porque a Mozilla considerava o WOFF uma alternativa superior às fontes SVG. [29] Outro engenheiro da Mozilla, Boris Zbarsky, afirmou que o subconjunto da especificação implementada no Webkit e Opera não oferece benefícios aos autores ou usuários da web em relação ao WOFF, e afirmou que implementar fontes SVG totalmente em um navegador da web é difícil porque era "não projetado com integração com HTML em mente". [30]

Em 2 de abril de 2010, Ian Hickson fez pequenas alterações no teste depois que a Mozilla, devido a questões de privacidade, alterou a maneira como Gecko lida com a :visitedpseudoclasse. [31] [32]

O Firefox 51.0a1 fez uma regressão de 100 para 99 em 14 de setembro de 2016; O Firefox 55.0a1 regrediu ainda mais para 97 em 1º de maio de 2017. [33] Nas versões do Firefox Quantum, 63.0 recebeu 97/100; 64.0 obteve 96/100, 68.1.0esr e mais tarde [34] obteve 97/100.

Internet Explorer

A Microsoft disse que o Acid3 não concordava com o objetivo do Internet Explorer 8 e que o IE8 melhoraria apenas alguns dos padrões testados pelo Acid3. [35] O IE8 marcou 20/100, o que é muito pior do que todos os concorrentes relevantes na época do lançamento do Acid3, e teve alguns problemas com a renderização da página de teste do Acid3. Em 18 de novembro de 2009, a equipe do Internet Explorer postou uma entrada no blog sobre o desenvolvimento inicial do Internet Explorer 9 da apresentação do PDC , mostrando que uma versão interna do navegador poderia pontuar 32/100. [36]

Ao longo de 2010, vários Developer Previews públicos melhoraram as pontuações dos testes do Internet Explorer 9 de 55/100 (em 16 de março [37] ) para 95/100 (em 4 de agosto). [38] [39] [40] Dean Hachamovich, gerente geral da equipe do IE, argumentou que lutar por 100/100 no teste Acid3 não é necessário nem desejável. Ele alegou que as duas falhas do Acid3 estavam relacionadas a recursos (fontes SVG e animação SMIL) que estavam "em transição". [41]

O Internet Explorer 11 e o Edge exibem uma pontuação de 100/100.

Críticas

As primeiras iterações do teste foram criticadas por serem uma coleção de recursos escolhidos a dedo que raramente eram usados, bem como aqueles que ainda estavam em um rascunho de trabalho do W3C. Eric A. Meyer , um notável defensor dos padrões da web, escreveu: "O ponto real aqui é que o teste Acid3 não é um teste de suporte a padrões de amplo espectro . uma pena, porque o que é realmente necessário agora são conjuntos de testes exaustivos para especificações - XHTML, CSS, DOM, SVG." [42]

“Implementar apenas o suficiente do padrão para passar em um teste é falso e não tem nada a ver com conformidade com os padrões”, argumentou o líder do Mozilla UX, Alex Limi, em seu artigo “Mythbusting: Why Firefox 4 not will not 100 on Acid3”. Limi argumentou que alguns dos testes, principalmente aqueles para fontes SVG, não têm relação com o uso real, e as implementações em alguns navegadores foram criadas apenas para aumentar as pontuações. [43]

Alterações de teste de setembro de 2011

Em 17 de setembro de 2011, Ian Hickson anunciou uma atualização para o Acid3. Nas palavras de Hickson, Håkon Wium Lie , da Opera Software , comentou "as partes do teste que podem ser alteradas nas especificações". Eles esperavam que essa mudança "permitisse que as especificações mudassem da maneira que fosse melhor para a Web, em vez de restringir as mudanças a serem apenas coisas que se encaixassem no que o Acid3 testou!" [44]

Como resultado, o Firefox 4 e o Internet Explorer 9 alcançaram uma pontuação de 100/100 no Acid3, mas o Internet Explorer não renderizou o teste corretamente porque não suportava sombra de texto até o Internet Explorer 10. [45]

Padrões testados

Partes dos seguintes padrões são testadas pelo Acid3:

Condições de passagem

Uma pontuação de aprovação só é considerada válida se as configurações padrão do navegador forem usadas.

As seguintes configurações do navegador e ações do usuário podem invalidar o teste:

  • Aumentar ou diminuir o zoom
  • Desativando imagens
  • Aplicando fontes personalizadas, cores, estilos, etc.
  • Ter complementos ou extensões instalados e ativados
  • Scripts de JavaScript do usuário ou Greasemonkey instalados e habilitados

Veja também

Referências

  1. ^ "Logs de IRC HTML5: freenode / #whatwg / 20070422" . 23 de abril de 2007 . Recuperado em 28 de dezembro de 2007 .
  2. ^ a b "Acid3: Colocando os fabricantes do navegador no aviso, outra vez" (comunicado de imprensa). Projeto de Padrões Web . 3 de março de 2008 . Recuperado em 4 de março de 2007 .
  3. ^ "Validar um nome qualificado não corresponde aos navegadores em um caso de canto · Edição #319 · whatwg/dom" . GitHub . Recuperado em 21 de setembro de 2019 .
  4. ^ Hickson, Ian. "Testes de Ácido" . Arquivado a partir do original em 27 de setembro de 2009 . Recuperado em 7 de maio de 2018 .
  5. ^ Hickson, Ian (3 de março de 2008). "Comentários no código fonte da página de teste" . Projeto de Padrões Web . Arquivado a partir do original em 18 de fevereiro de 2008 . Recuperado em 16 de fevereiro de 2008 .
  6. ^ Mentira, Håkon Wium; Çelik, Tantek ; Glazman, Daniel ; van Kesteren, Anne (15 de setembro de 2009). "Consultas de mídia" . Consórcio World Wide Web . Arquivado a partir do original em 11 de fevereiro de 2010 . Recuperado em 9 de fevereiro de 2010 .
  7. Dahlström, Erik (22 de janeiro de 2008). "Chegando ao núcleo da web" . Software Opera . Arquivado a partir do original em 2 de fevereiro de 2008 . Recuperado em 16 de fevereiro de 2008 .
  8. ^ Hickson, Ian. "O teste Acid3 (renderização de referência)" . Projeto de Padrões Web . Arquivado a partir do original em 12 de fevereiro de 2010 . Recuperado em 9 de fevereiro de 2010 .
  9. ^ Ian Hickson (1 de abril de 2008). "O aspecto de desempenho do Acid3" . Arquivado a partir do original em 5 de abril de 2008 . Recuperado em 3 de abril de 2008 .
  10. ^ "Teste de navegador Acid3 - O projeto de padrões da Web" . Projeto de Padrões Web . Arquivado a partir do original em 19 de janeiro de 2010 . Recuperado em 9 de fevereiro de 2010 .
  11. Maciej Stachowiak (26 de setembro de 2008). "comentário para 'Passagem completa do Acid3'" . WebKit .org . Recuperado em 29 de abril de 2009 .
  12. Hickson, Ian (29 de março de 2008). "A controvérsia antialiasing em Acid3" . Arquivado a partir do original em 8 de maio de 2009 . Recuperado em 30 de abril de 2009 .
  13. ^ van Kesteren, Anne (10 de janeiro de 2008). "Ácido3" . Arquivado a partir do original em 7 de março de 2008 . Recuperado em 4 de março de 2008 .
  14. ^ Hickson, Ian (14 de janeiro de 2008). "A competição para você apresentar o melhor teste de Acid3" . Arquivado a partir do original em 8 de março de 2008 . Recuperado em 4 de março de 2008 .
  15. ^ a b Hickson, Ian (4 de março de 2008). "Moebius (anúncio da conclusão da prova)" . Arquivado a partir do original em 8 de março de 2008 . Recuperado em 4 de março de 2008 .
  16. ^ Ian Hickson. "Testes que nunca estão totalmente concluídos" . Arquivado a partir do original em 30 de março de 2008 . Recuperado em 30 de março de 2008 .
  17. ^ Ian Hickson (22 de abril de 2008). "Consultas de mídia e desempenho em Acid3 (e um erro da minha parte)" . Arquivado a partir do original em 25 de abril de 2008 . Recuperado em 24 de abril de 2008 .
  18. ^ Ian Hickson. "Mudanças de última hora para Acid3" . Recuperado em 30 de março de 2008 .
  19. ^ a b Maciej Stachowiak (26 de março de 2008). "WebKit atinge Acid3 100/100 em compilação pública" . WebKit.org . Arquivado a partir do original em 28 de março de 2008 . Recuperado em 26 de março de 2008 .
  20. ^ Tim Altman (março de 2008). "Opera e o teste Acid3" . Software Opera . Arquivado a partir do original em 28 de março de 2008 . Recuperado em 28 de março de 2008 .
  21. ^ Lars Erik Bolstad (março de 2008). "Public Acid3 build" . Software Opera . Arquivado a partir do original em 30 de março de 2008 . Recuperado em 28 de março de 2008 . A última compilação pós-9.5 pontua 99/100 e falha no critério de suavidade.
  22. Paul Lilly (29 de setembro de 2008). "O Safari Beta 4 é o primeiro navegador a atingir uma pontuação perfeita no teste Acid3" . PC máximo . Recuperado em 16 de novembro de 2009 .
  23. ^ Peterson, Adele (8 de abril de 2007). "O mecanismo do navegador WebKit em execução na interface do usuário do navegador Safari" . WebKit.org . _ Recuperado em 9 de fevereiro de 2010 .
  24. ^ Stachowiak, Maciej (25 de setembro de 2008). "Passagem Completa de Ácido3" . WebKit.org . _ Recuperado em 9 de fevereiro de 2010 .
  25. ^ Lund Engebø, Helene (26 de março de 2009). "Opera Mobile 9.7 com Opera Turbo" . Opera Software ASA . Arquivado a partir do original em 2 de junho de 2009 . Recuperado em 6 de julho de 2009 .
  26. ^ "Turbocarregue sua experiência na Web com o Opera 10" (comunicado de imprensa). Software Opera . 1 de setembro de 2009. Arquivado a partir do original em 30 de maio de 2012 . Recuperado em 4 de setembro de 2009 .
  27. ^ "Problema 231: teste ácido 3 falha no cromo" . 8 de julho de 2009 . Recuperado em 9 de fevereiro de 2010 .
  28. ^ Mike Shaver (27 de março de 2008). "A oportunidade perdida de ácido 3" . Arquivado a partir do original em 29 de março de 2008 . Recuperado em 30 de março de 2008 .
  29. Robert O'Callahan (3 de junho de 2010). "Não implementar recursos é difícil" . Recuperado em 15 de dezembro de 2010 .
  30. Limi, Alexandre (25 de janeiro de 2011). "Mythbusting: Por que o Firefox 4 não marca 100 no Acid3" . Recuperado em 20 de setembro de 2011 .
  31. Baron, David (9 de março de 2010), Prevenindo ataques ao histórico de um usuário por meio de CSS: seletores visitados , Mozilla, arquivado do original em 5 de abril de 2010 , recuperado em 8 de abril de 2010
  32. Hickson, Ian (2 de abril de 2010), atualização Acid3 para :link/:visited privacy changes , recuperado em 7 de abril de 2010
  33. ^ chrisjone (18 de outubro de 2017). "1409813 - Firefox Quantum 57.0b9 (64 bits) (Linux) falha no teste de ácido 3" . Bugzilla . Recuperado em 23 de dezembro de 2018 .
  34. ^ Última verificação em 86.0 beta 5, 02.04.2021
  35. Chris Wilson (20 de março de 2008). "Chat da Zona para Especialistas do Windows Internet Explorer 8 (20 de março de 2008)" . Microsoft . Arquivado a partir do original em 20 de abril de 2008 . Recuperado em 15 de abril de 2008 . O teste ACID3 é uma coleção de testes interessantes, espalhados por um grande conjunto de padrões. Alguns desses padrões terão melhorias no IE8 – na verdade, o IE8 já melhora a pontuação do IE7 – mas estamos focados nos recursos e padrões mais importantes para facilitar a vida dos desenvolvedores web. O teste Acid3 não mapeia diretamente para esse objetivo.
  36. ^ "Uma visão inicial do IE9 para desenvolvedores" . Microsoft . 18 de novembro de 2009. Arquivado a partir do original em 8 de fevereiro de 2010 . Recuperado em 9 de fevereiro de 2010 .
  37. O teste Acid3 do Web Standards Project arquivado em 2010-08-06 na Wayback Machine , Microsoft. Para a primeira visualização do desenvolvedor do IE 9.
  38. O teste Acid3 do Web Standards Project arquivado em 2010-08-06 na Wayback Machine , Microsoft. Para a segunda visualização do desenvolvedor do IE 9.
  39. O teste Acid3 do Web Standards Project arquivado em 2010-08-14 na Wayback Machine , Microsoft. Para a terceira visualização do desenvolvedor do IE 9.
  40. ^ Teste Acid3 do projeto de padrões da Web arquivado 2010-03-22 no Wayback Machine , Microsoft. Para a 4ª visualização do desenvolvedor do IE 9.
  41. ^ "Microsoft lança prévia final do IE9, beta prevista para setembro" . ZDNet. 26 de agosto de 2010. Arquivado a partir do original em 2 de dezembro de 2010 . Recuperado em 9 de novembro de 2010 .
  42. ^ "Acid Redux" . 22 de março de 2008. Arquivado a partir do original em 6 de março de 2010 . Recuperado em 21 de março de 2010 .
  43. ^ "Mythbusting: Por que o Firefox 4 não marca 100 no Acid3" . 25 de janeiro de 2011. Arquivado a partir do original em 26 de janeiro de 2011 . Recuperado em 25 de janeiro de 2011 .
  44. ^ "Ian Hickson anuncia modificações Acid3" . 17 de setembro de 2011. Arquivado a partir do original em 12 de outubro de 2011 . Recuperado em 17 de setembro de 2011 .
  45. ^ "Teste Acid3 simplificado; Todos os navegadores modernos marcam 100" . 20 de setembro de 2011 . Recuperado em 7 de junho de 2013 .

Links externos

Mídia relacionada ao Acid3 no Wikimedia Commons