Запускать тесты в Azure DevOps Build Pipeline - PullRequest
0 голосов
/ 14 февраля 2019

Я хотел бы создать конвейер сборки в DevOps Azure, включая тесты / покрытие кода.

Для этого я создал очень простой Java-проект:

package main:
    - main class
    - Calculator class
          - add method
package test:
    - CalculatorTest class
        - addTest method

Он очень простой,просто для меня, чтобы понять, как работают тесты в конвейере.Я не использую Maven или подобные вещи.Для тестов я использую инфраструктуру JUnit.

В конвейере Azure DevOps я импортировал свой проект из Github и начал создавать конвейер.Я начинаю с начального шаблона, который содержит:

trigger:
- master

pool:
  vmImage: 'Ubuntu-16.04'

steps:
- script: echo Hello, world!
  displayName: 'Run a one-line script'

- script: |
    echo Add other tasks to build, test, and deploy your project.
    echo See https://aka.ms/yaml
  displayName: 'Run a multi-line script'

Мой вопрос:

Что мне нужно сделать, чтобы автоматически запустить мои тесты?

Я видел несколько примеров в документации Microsoft, но это всегда было для «сложных» проектов (например, с maven и т. Д.).И если я новичок в Azure DevOps и файле / синтаксисе YAML, я потерян.

Я хочу запускать свои тесты после каждого коммита и видеть результаты (тест + покрытие кода) в сводке конвейера, как описано здесь: https://docs.microsoft.com/en-us/azure/devops/pipelines/test/review-continuous-test-results-after-build?view=azure-devops#view-test-results-in-build

Большое спасибо.

PS: На данный момент я просто сосредоточен на тестах, но как только это будет сделано, я также хотел бы опубликоватьстроить артефакты.Я хотел бы получить подтверждение этого:

- task: PublishBuildArtifacts@1

Это правильная строка?

РЕДАКТИРОВАТЬ

Кажется, что строка - task: PublishBuildArtifacts@1 работает правильноно у меня есть следующее предупреждение:

Directory '/home/vsts/work/1/a' is empty. Nothing will be added to build artifact 'drop'.

Что это значит?

1 Ответ

0 голосов
/ 15 февраля 2019

Наконец, я использовал визуальный дизайнер (как объяснено здесь: https://docs.microsoft.com/en-US/azure/iot-edge/how-to-ci-cd) и добавил задачу Maven.

Я обновил свой проект, чтобы использовать Maven, который хорошо интегрирован в Azure Devops.

...