Pular para o conteúdo
SDETRole
SDETRole

JSON e dados

Formatador XML

Formate ou minifique XML mantendo CDATA, comentários e PIs.

Roda inteiramente no seu navegador Sem cadastro

Input XML

0 chars

Formatted

Sobre esta ferramenta

Respostas SOAP, sitemaps, POMs do Maven e relatórios JUnit XML são difíceis de ler em uma única linha. Este formatador primeiro verifica se a entrada está bem formada usando o próprio parser XML do navegador e depois reindenta com um tokenizador que deixa seções CDATA, comentários, instruções de processamento e o DOCTYPE exatamente como foram escritos. Elementos que contêm apenas texto ficam em uma linha, então a saída parece XML escrito à mão, e não uma tag por linha.

Como usar

  1. Cole o XML ou carregue o documento de pedido de exemplo.
  2. Escolha Format e uma indentação (2 espaços, 4 espaços ou tab), ou Minify para compactar em uma linha.
  3. Se o XML não estiver bem formado, corrija a linha e a coluna mostradas no banner vermelho.
  4. Copie ou baixe o resultado.

Bem formado não é o mesmo que válido

Um XML bem formado segue as regras de sintaxe: exatamente um elemento raiz, todas as tags fechadas e corretamente aninhadas, valores de atributos entre aspas e caracteres especiais escapados. Um XML válido também é bem formado e está em conformidade com um schema (XSD) ou DTD que define quais elementos e valores são permitidos. Este formatador verifica se está bem formado, porque o documento precisa ser interpretado antes de ser reindentado. A validação contra um XSD é uma etapa separada.

Motivos comuns para um XML não ser interpretado

  • Um e comercial ou sinal de menor sem escape no texto: escreva & e <, ou coloque o texto em uma seção CDATA.
  • Tags que diferem só na caixa, como <Order>…</order>: XML diferencia maiúsculas de minúsculas.
  • Mais de um elemento no nível superior: envolva-os em uma única raiz.
  • Valor de atributo sem aspas, como em <item id=7>.
  • Prefixo de namespace sem declaração, como <soap:Envelope> sem o atributo xmlns:soap="…".
  • Qualquer coisa antes da declaração XML: <?xml version="1.0"?> precisa ser os primeiros caracteres, sem espaço antes.

Onde testers encontram XML

APIs SOAP e corporativas legadas, relatórios de teste JUnit XML (o formato que a maioria dos servidores de CI lê), arquivos pom.xml do Maven, sitemaps, feeds RSS e layouts Android são todos XML. O Playwright gera JUnit XML com reporter: [['junit', { outputFile: 'results.xml' }]], e formatar esse arquivo é o jeito mais rápido de ver por que o CI contou um teste como falho.

Para fazer assertions sobre XML no código, o REST Assured suporta matchers XPath como body(hasXPath("/order/status[text()='SHIPPED']")). Na linha de comando, xmllint --format file.xml formata um arquivo, e xml.dom.minidom.parseString(text).toprettyxml() do Python faz o mesmo em um script. Para testar expressões XPath de forma interativa, use o Testador de XPath e CSS.

Perguntas frequentes: Formatador XML

Formatar altera meus dados?

Textos formados só por espaços entre tags são descartados e recriados como indentação, e o texto dentro dos elementos tem os espaços das pontas removidos. Isso é inofensivo para XML orientado a dados, mas em conteúdo misto ou em elementos onde xml:space="preserve" importa, compare o resultado antes de usá-lo.

Seções CDATA e comentários são mantidos?

Sim. Eles são copiados byte a byte, incluindo qualquer marcação dentro do CDATA. No modo Minify, você pode optar por remover os comentários.

Digite para buscar em todo o SDETRole.

Busca de texto completo com Pagefind · roda no seu navegador Abrir página de busca →