Skip to content

vrunner xunit

Запускает модульные тесты через Vanessa-ADD (xUnit for 1C). Открывает 1С:Предприятие, загружает обработку xddTestRunner.epf и запускает тесты из указанного каталога или файла.

Изменено в 3.0

vrunner xunit переименована в vrunner test xunit — вошла в группу test.

Документация test xunit →

Изменения

Аспект2.x3.0
Командаvrunner xunitvrunner test xunit
--reportxunitПоддерживаетсяУстарел — используйте --reportsxunit
Формат отчёта --reportxunitПуть к каталогуУстарел
--reportsxunitИмена генераторов Vanessa-ADDКраткие форматы (junit{путь};allure{путь}) и имена генераторов
Переменные окруженияRUNNER_TESTSPATH, RUNNER_PATHXUNITVRUNNER_TESTSPATH, VRUNNER_PATHXUNIT
Секция в настройках"xunit""vrunner.test.xunit"

Формат --reportsxunit

В 2.x указывались полные имена генераторов Vanessa-ADD: ГенераторОтчетаJUnitXML{./build/junit.xml}

В 3.0 добавлены краткие форматы (регистр не важен):

Краткий форматГенератор Vanessa-ADD
junitГенераторОтчетаJUnitXML
allureГенераторОтчетаAllureXMLВерсия2
jsonГенераторОтчетаJSON
mxlГенераторОтчетаMXL
genericexecutionГенераторОтчетаGenericExecution

Полные имена генераторов из 2.x (ГенераторОтчета*{путь}, GenerateReport*{путь}) по-прежнему принимаются — старые строки запуска работают без изменений. Это позволяет использовать и генераторы-плагины, которых нет в кратком списке (например, ГенераторОтчетаJUnitXML_TFS).

Порядок аргументов

В 3.0 опции указываются до позиционного аргумента TESTSPATH: vrunner test xunit --reportsxunit "junit{...}" ./tests. Вариант 2.x с опциями после пути к тестам (vrunner xunit ./tests --reportsxunit ...) парсер 3.0 пока не принимает.

Примеры

Было (2.x)

bash
# Запуск тестов с JUnit-отчётом (старый формат)
vrunner xunit ./tests \
  --ibconnection /F./build/ib \
  --reportsxunit "ГенераторОтчетаJUnitXML{build/junit.xml}"

# Запуск через ключ --settings
vrunner xunit --settings tools/vrunner.json

Стало (3.0)

bash
# Запуск тестов с JUnit-отчётом
vrunner test xunit \
  --ibconnection /F./build/ib \
  --reportsxunit "junit{./build/reports/junit.xml}" \
  ./tests

# Несколько форматов одновременно
vrunner test xunit \
  --ibconnection /F./build/ib \
  --reportsxunit "junit{./build/reports/junit.xml};allure{./build/reports/allure}" \
  ./tests

Файл настроек

Было (vrunner.json)

json
{
  "default": {
    "--ibconnection": "/F./build/ib",
    "--db-user": "Администратор",
    "--db-pwd": ""
  },
  "xunit": {
    "testsPath": "./tests",
    "--reportsxunit": "ГенераторОтчетаJUnitXML{build/junit/xddreport.xml};ГенераторОтчетаAllureXML{build/allure/allure-testsuite.xml}",
    "--xddExitCodePath": "build/xddExitCodePath.txt",
    "--testclient": "Автотест:123:48223"
  }
}

Стало (autumn-properties.json)

json
{
  "vrunner": {
    "ibconnection": "/F./build/ib",
    "db-user": "Администратор",
    "db-pwd": "",
    "test": {
      "xunit": {
        "reportsxunit": "jUnit{./build/reports/junit.xml};allure{./build/reports/allure}",
        "xddExitCodePath": "build/xddExitCodePath.txt",
        "testclient": "Автотест:123:48223"
      }
    }
  }
}

TIP

Позиционный аргумент testsPath из конфига 2.x не поддерживается в autumn-properties.json. Путь к тестам передавайте позиционным аргументом в командной строке или через переменную окружения VRUNNER_TESTSPATH.

Встроенные тесты vanessa-add и макрос $addRoot

Макрос $addRoot (каталог установки библиотеки Vanessa-ADD) сохранён в 3.0. Он раскрывается в аргументе TESTSPATH команды test xunit (и в --feature-path команды test vanessa).

Запуск встроенных дымовых тестов Vanessa-ADD, как в 2.x:

bash
# Было (2.x)
vrunner xunit "$addRoot/tests/smoke" --ibconnection /F./build/ib

# Стало (3.0) - опции указываются до пути к тестам
vrunner test xunit --ibconnection /F./build/ib "$addRoot/tests/smoke"

$addRoot указывает на каталог <каталог установки oscript>/lib/add, где лежат xddTestRunner.epf, bddRunner.epf и встроенные тесты (tests/smoke).

WARNING

В POSIX-оболочках $addRoot может быть воспринят как переменная окружения. Заключайте путь в одинарные кавычки или экранируйте $, чтобы макрос дошёл до vrunner буквально:

bash
vrunner test xunit --ibconnection /F./build/ib '$addRoot/tests/smoke'