---
sourceDocument: Xanadu IT Service Management
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/xanadu/it-service-management

 Release :

    - xanadu

ft:locale :

    - pt-BR

ft:publication_title :

    - Xanadu IT Service Management

ft:clusterId :

    - itsm

bundleId :

    - itsm

workflow :

    - Technology


---

# DevOps integração da ferramenta de teste

# DevOps integração da ferramenta de teste {#ariaid-title1}

* Versão de lançamento: Xanadu
* 
* Atualizado 1 de ago. de 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 6 min. de leitura

A integração da ferramenta de teste permite exibir resultados de testes em DevOps para Jenkins, Azure DevOps, GitHub, GitHub Enterprise, e GitLab testes de unidade, funcionais e de desempenho.

Para GitLab e Jenkins, somente a integração do tipo de teste JUnit é compatível.  
Nota:  
Para outros tipos de teste, use o [endpoint DevOps - POST /devops/tool/{capability}](https://www.servicenow.com/docs/access?context=devops-api&version=xanadu&pubname=xanadu-api-reference&ft:locale=en-US) da [API DevOps](https://www.servicenow.com/docs/access?context=devops-api&version=xanadu&pubname=xanadu-api-reference&ft:locale=en-US).  
* Os testes do Selenium executados e publicados usando o TestNG são relatados pelo plug-in \[ Jenkins para ServiceNow DevOps.
* A categorização do tipo de teste é compatível.
* Os resultados de testes adicionais relatados por ferramentas, como o Apache JMeter, podem ser processados em DevOps usando subfluxos Workflow Studio \] personalizados (não são necessárias mudanças de pipeline).
{#dev-ops-test-tool-integration__ul_bkq_dq5_pnb}  
{#dev-ops-test-tool-integration__table_xxq_lcx_pnb__entry__2}

| Categoria | Tipo de teste |
|-|-|
| Unidade | JUnit (padrão) NUnit XUnit Teste de unidade Nota: * Para GitLab e Jenkins, somente a integração do tipo de teste JUnit é compatível. * Para ADO, GitHub e GitHub Enterprise, as integrações de tipo de teste de unidade, JUnit, NUnit, XUnit e são compatíveis. {#dev-ops-test-tool-integration__ul_cyb_gdj_b1c} Você pode mudar o tipo de teste padrão modificando o \[sn_devops.default_test_type\] [DevOps propriedade](https://servicenow-prod.fluidtopics.net/g2jkCyZosAVMGIZlfkck7w "Use essas propriedades para definir as configurações na aplicação Velocidade de mudança para DevOps."). |
| Funcional | * Integração * Regressão * Fumaça * Sistema * Aceitação do usuário {#dev-ops-test-tool-integration__ul_nnl_mcx_pnb} |
| Desempenho | Carregar |
[ ]

{#dev-ops-test-tool-integration__table_xxq_lcx_pnb}

## Mapeamento de tipo de teste {#dev-ops-test-tool-integration__section_opj_n5l_vlb}

O mapeamento de tipo de teste conecta o tipo de teste e a entidade que está sendo testada à ferramenta DevOps (DevOpsIntegraçõesMapeamentos de tipo de teste módulo.)

Um mapeamento preciso do tipo de teste garante que o tipo de teste sempre apareça conforme pretendido nos resultados do resumo de teste.  
{#dev-ops-test-tool-integration__table_j2s_nkv_pnb__entry__2}

| Campo || Descrição |
|-|-|-|
| Tipo de teste || * JUnit * Integração * Regressão * Fumaça * Sistema * Aceitação do usuário * Carregar {#dev-ops-test-tool-integration__ul_jyw_xkv_pnb} |
| ID da entidade do DevOps | Nome da tabela | DevOps nome da tabela que contém a entidade vinculada aos resultados de testes (na carga do relatório de teste). * Etapa \[sn_devops_step\] * Pipeline \[sn_devops_pipeline\] {#dev-ops-test-tool-integration__ul_sy5_4mv_pnb} Nota: Somente as tabelas DevOps de Etapa e Pipeline são compatíveis. |
| ID da entidade do DevOps | Documento | Nome da entidade especificada na tabela selecionada. Por exemplo, o nome da etapa, pipeline, artefato ou pacote. |
| Testar caminhos de arquivo (Jenkins testes somente) || Caminho para o arquivo de resultados de testes gerado no servidor Jenkins. Isso é útil para que relatórios de teste com atributos que não estejam em conformidade com a implementação de JUnit ou TestNG, como JMeter, por exemplo, ainda possam ser aproveitados por DevOps. Separe vários arquivos por uma vírgula. Nota: Você deve usar um subfluxo Workflow Studio para transformar uma carga de teste bruta. |
| Integração da ferramenta || Ferramenta que está executando o teste. |
| Tabela do DevOps || DevOps tabela que corresponde ao nome da tabela na configuração de ID de entidade de DevOps. |
[ ]

{#dev-ops-test-tool-integration__table_j2s_nkv_pnb}  
Figura 1. DevOps mapeamento de tipo de teste  
Figura 2. Exemplo de arquivo yaml de teste de unidade ADO Figura 3. Exemplo de arquivo yaml de teste de unidade do GitHub

## Como transformar uma carga de teste bruta {#dev-ops-test-tool-integration__section_evb_tzv_pnb}

Você pode transformar um relatório de teste bruto (um relatório que contém atributos que não estão em conformidade com a implementação de JUnit ou TestNG), como JMeter, por exemplo, configurando a tabela de decisão Política de subfluxo de teste de DevOps para chamar um subfluxo personalizado (Tabelas de DecisãoTabelas de Decisão módulo).  
Nota:  
Você deve criar o subfluxo Workflow Studio personalizado que transforma a carga de teste bruta.

Se houver mais de um tipo de teste em uma fase de desempenho, você poderá usar a tabela de decisão Política de tipo de teste do DevOps para configurar o tipo de teste para cada teste para que as cargas do resultado do teste sejam transformadas corretamente.  
Figura 4. DevOps tabelas de decisão  
{#dev-ops-test-tool-integration__table_c54_kcw_pnb__entry__3}

| Tabela de decisão | Finalidade | Configuração |
|-|-|-|
| Política de subfluxo de teste de DevOps | Para chamar automaticamente um subfluxo personalizado que transforma a carga bruta recebida pela ferramenta. Entradas de decisão: * Carga do resultado de testes * Tipo de Teste {#dev-ops-test-tool-integration__ul_wxg_2dw_pnb} | Crie uma decisão que especifica o subfluxo personalizado a ser chamado quando a carga bruta é recebida. Defina as condições para conter campos que seriam incluídos na carga bruta. Por exemplo, para chamar Jenkins o subfluxo personalizado do Teste de desempenho BZ: Condições: * <kbd class="ph userinput">O tipo de teste é carga</kbd> (Carga é o tipo de teste configurado para testes de desempenho) * <kbd class="ph userinput">A carga do resultado de testes contém rendimento</kbd> * <kbd class="ph userinput">A carga do resultado de testes contém simultaneidade</kbd> {#dev-ops-test-tool-integration__ul_jrv_x2w_pnb} Resposta: Flow: Jenkins Teste de desempenho BZ |
| Política de tipo de teste de DevOps | Para definir automaticamente os tipos de teste quando mais de um tipo de teste estiver configurado em uma fase de teste de desempenho. Isso é necessário para que os resultados do segundo tipo de teste sejam transformados corretamente. Por exemplo, quando um teste de desempenho de carregamento e um teste de desempenho JUnit são mapeados na mesma etapa DevOps, os resultados do teste JUnit não serão formatados corretamente, a menos que uma decisão seja criada. Entradas de decisão: * Etapa * Carga do resultado de testes * Integração da Ferramenta * Pipeline {#dev-ops-test-tool-integration__ul_dkm_sjw_pnb} | Crie uma decisão para cada tipo de teste na fase de teste de desempenho para definir o tipo de teste. Teste de carga: * Condições: * <kbd class="ph userinput">A etapa é Testes de desempenho</kbd> * <kbd class="ph userinput">A carga do resultado de testes contém rendimento</kbd> * <kbd class="ph userinput">A carga do resultado de testes contém simultaneidade</kbd> {#dev-ops-test-tool-integration__ul_r5g_2kw_pnb} * Resposta: <kbd class="ph userinput">TestType: carregar</kbd> {#dev-ops-test-tool-integration__ul_fvh_tpw_pnb} Teste JUnit: * Condições: * <kbd class="ph userinput">A etapa é Testes de desempenho</kbd> * <kbd class="ph userinput">A Carga do Resultado de Testes não contém o rendimento</kbd> * <kbd class="ph userinput">A Carga do Resultado de Testes não contém simultaneidade</kbd> {#dev-ops-test-tool-integration__ul_lx1_5qw_pnb} * Resposta: <kbd class="ph userinput">TestType: JUnit</kbd> {#dev-ops-test-tool-integration__ul_kx1_5qw_pnb} |
[Tabela 1. DevOps tabelas de decisão]

{#dev-ops-test-tool-integration__table_c54_kcw_pnb}  
Figura 5. DevOps vários tipos de teste de desempenho  
Figura 6. DevOps vários mapeamentos de tipo de teste  
Figura 7. DevOps decisão da tabela de decisão

## Resultados do resumo de teste {#dev-ops-test-tool-integration__section_iq3_11v_pnb}

Você pode exibir os resultados do resumo de teste dessas maneiras.

* DevOpsResultados de testes módulo (Resumos de teste e Resumos de teste de desempenho).
* [Solicitação de mudança do DevOps](https://servicenow-prod.fluidtopics.net/OEpDD6ibA72~shNR67XwuA "Habilite o recurso de aceleração de mudança de Velocidade de mudança para DevOps para a criação automática de solicitação de mudança no pipeline e use fluxos e políticas de aprovação de mudança para automatizar a aprovação sob determinadas condições.") - Lista relacionada de resultados de testes.
* [DevOps IU do pipeline](https://servicenow-prod.fluidtopics.net/duZcKZMLCwlwesKWmgKOTQ "Use a IU de pipeline para visualizar interações e resultados em uma execução de pipeline. Esta exibição gráfica mostra a progressão de etapas do pipeline e outros detalhes de cada pipeline.") - Bloco de qualidade.
{#dev-ops-test-tool-integration__ul_ayj_jd4_vlb}  
Figura 8. DevOps exemplo de resumo de teste de desempenho

## Carga da capacidade de Notificação JSON padrão esperada - Ferramenta de teste {#dev-ops-test-tool-integration__section_ey3_fyn_qnb}

Funcional:

    { 
    "name": "CorpSite-selenium#55", 
    "duration": 78.802, 
    "passedTests": 4, 
    "failedTests": 0, 
    "skippedTests": 0, 
    "blockedTests": 0, 
    "totalTests": 4, 
    "startTime": "2020-06-30T18:12:31Z", 
    "finishTime": "2020-06-30T18:12:31Z", 
    "passingPercent": 100, 
     
     
    // Use Artifact OR Package OR Build + Stage + PipelineName Attributes 

    Send only one Attribute combination. For example, send Attributes of either  Artifact or Package, or the combination of Build + Stage + PipelineName.

    If you send more than one Attribute, priority is given in the following order and the low priory one is ignored. For example, if you send attribute for both packages and artifacts, then attribute of package is considered and the attribute of artifacts is ignored.

    1.packages
    2.artifcats
    3.buildNumber + stageName + pipelineName

    "packages": [{"name": "CorpSite-pkg1"}], 
    "artifacts": [{"name": "CorpSite-artifact", "version": "1.0.0"}], 
    "buildNumber": "55", 
    "stageName": "test", 
    "pipelineName": "CorpSite-selenium", 
    } 

    Notes:
    - The pipelineName attribute value must be same as the value in the Orchestration pipeline field of the Pipeline [sn_devops_pipeline] table.
    - The stageName attribute value must be same as the value in the Orchestration stage field of the Step [sn_devops_step] table.

Desempenho:

    { 
    "name": "Performance Tests", 
    "url": "http://abc.com", 
    "startTime": "2020-06-30T18:12:31Z", 
    "finishTime": "2020-06-30T18:12:31Z", 
    "duration": 78.802, 
    "maximumVirtualUsers": "", 
    "throughput": "", 
    "maximumTime": "", 
    "minimumTime": "", 
    "averageTime": "", 
    "ninetyPercent": "", 
    "standardDeviation": "", 
     
    // Use Artifact OR Package OR Build + Stage + PipelineName Attributes 

    Send only one Attribute combination. For example, send Attributes of either  Artifact or Package, or the combination of Build + Stage + PipelineName.

    If you send more than one Attribute, priority is given in the following order and the low priory one is ignored. For example, if you send attribute for both packages and artifacts, then attribute of package is considered and the attribute of artifacts is ignored.

    1.packages
    2.artifcats
    3.buildNumber + stageName + pipelineName

    "packages": [{"name": "CorpSite-pkg1"}], 
    "artifacts": [{"name": "CorpSite-artifact", "version": "1.0.0"}], 
    "buildNumber": "55", 
    "stageName": "test", 
    "pipelineName": "CorpSite-Performance", 
    } 

    Notes:
    - The pipelineName attribute value must be same as the value in the Orchestration pipeline field of the Pipeline [sn_devops_pipeline] table.
    - The stageName attribute value must be same as the value in the Orchestration stage field of the Step [sn_devops_step] table.

* **[Configurar uma ferramenta de teste no DevOps](https://servicenow-prod.fluidtopics.net/B1eqAgRB_Vqk1J_5AcH7tQ)**   
  Configure uma ferramenta de teste em DevOps para exibir resultados de testes de unidade, funcionais e de desempenho.
* **[Adicionar resultados de testes a solicitações de mudança usando a API de teste](https://servicenow-prod.fluidtopics.net/vDvCFYH1b5mrYanxgGwK7Q)**   
  Adicione resultados de testes a DevOps solicitações de mudança usando a capacidade de teste da API DevOps - POST /devops/tool/{capability}. A API está disponível para todos os tipos de teste de várias ferramentas conectadas a Velocidade de mudança para DevOps.
* **[Adicionar anexos a solicitações de mudança usando a API de anexos](https://servicenow-prod.fluidtopics.net/sPKq3QHJp5Co0BooKFHy3w)**   
  Adicione xmls de relatório de teste como anexos às solicitações de mudança do DevOps usando a API de anexo.

