#azure-devops #azure-pipelines #azure-task-groups
#azure-devops #azure-конвейеры #azure-task-groups
Вопрос:
Я создал группу задач для запуска сценариев robot Framework в Azure DevOps. Я добавил следующие задачи в группу задач:
- Используйте версию Python
- Скрипт Python для установки robot framework
- Задача скрипта Python для запуска скрипта robot framework
- Опубликовать результаты тестирования
В задаче Python script task to run robot framework script
у меня есть следующий встроенный скрипт:
pip install pytest pytest-azurepipelines
pytest
robot --pythonpath . -x outputxunit.xml TestScenarios.robot
TestScenarios.robot
присутствует в моем репозитории GitHub. Итак, мой вопрос в том, где я могу указать, что TestScenarios.robot
необходимо получить из моего репозитория GitHub.
Я не могу понять, как это сделать в задачах.
Я знаю, что при настройке конвейера у нас есть параметр конфигурации, где мы можем указать репозиторий GitHub. Но я хочу знать, как мы можем предоставить детали репозитория GitHub для задачи?
Затем я хочу использовать эту группу задач в моем выпуске stage, чтобы при каждом развертывании выпуска группа задач запускалась для запуска сценария автоматизации.
Дайте мне знать, если вам нужны дополнительные сведения.
Ответ №1:
Для конвейера сборки:
Когда начнется сборка, исходный репозиторий будет загружен в $(Build.SourcesDirectory)
.
Таким образом, вы могли бы указать путь к репозиторию как $(Build.SourcesDirectory)/Scriptfolder/xx.robot
.
Вот мой пример:
Xx.robot находится в папке сценариев.
Скрипт robot framework:
robot --pythonpath . -x outputxunit.xml $(build.sourcesdirectory)/ScriptFolder/TestCases.robot
Для конвейера выпуска
В выпуске исходный код будет загружен в $(System.ArtifactsDirectory)/{Source alias }
Примечание: Source alias
находится в Release definition -> Artifacts
.
Вот пример моего скрипта:
robot --pythonpath . -x outputxunit.xml $(System.ArtifactsDirectory)/_lujinlou_TestPython/ScriptFolder/TestCases.robot
Вот документы о переменных сборки и переменных выпуска.
Обновить:
Поскольку вы используете конвейер выпуска, вам необходимо убедиться, что исходная ветвь является главной.
И вы могли бы получить псевдоним источника.
Путь к сценарию: $(System.ArtifactsDirectory)/{Source alias}/TestScenarios.robot
Комментарии:
1. Спасибо, что ответили. Я попробую это.
2. @Комз. Не стесняйтесь, дайте мне знать, если ответ может вам как-то помочь. Если у вас все еще есть какие-либо вопросы, я по-прежнему буду здесь, чтобы помочь вам.
3. @ Kevin Lu-MSFT Извините, Но я не могу разобраться в этом, все еще застрял. У меня есть мой TestScenarios.robot в моей ветке github ABC / xyz — master
4. @Komz. ABC и xyz — это имя папки? ИЛИ ABC — это имя репозитория, xyz — это имя папки? Если последнее, вам просто нужно указать путь:
$(build.sourcesdirectory)/xyz/xxx.robot
. Вы находитесь в конвейере сборки или выпуска?5. @ Kevin Lu-MSFT Я нахожусь в конвейере выпуска. xyz — это имя репозитория