как это скормить Allure
Directory = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location);
чтобы в конфиге можно было написать
allure": {
“directory”: “…/…/…/resources/target/allure-results”
},
?
как это скормить Allure
Directory = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location);
чтобы в конфиге можно было написать
allure": {
“directory”: “…/…/…/resources/target/allure-results”
},
?
Здесь предложено так:
[OneTimeSetUp]
public void Init()
{
Environment.CurrentDirectory = Path.GetDirectoryName(GetType().Assembly.Location);
}
не совсем понятно, как этот метод Init() связать с json …
“allure”: {
“directory”: “???”
},
Если я правильно понимаю, то allure берёт путь для создания своего каталога на основании переменной окруженния Environment.CurrentDirectory
Я использую эту же связку, в моем случае этот метод в классе Hooks (где есть BeforeScenario and AfterScenario степы. Этот метод:
[OneTimeSetUp]
public void Init()
{
Environment.CurrentDirectory = Path.GetDirectoryName(GetType().Assembly.Location);
}
после окончания джобы c прогоном теста на gitlab (c помощью Runner), в папке ранера, на компе создается папка “allure-results” в которой находятся .json. После запуска следующей джобы, которая:
-powershell -command (путь)
-powershell -command allure serve
отчет не поднимается, папка allure-results не существует.
В чем может быть дело ? как поднять аллюр отчет ?
Возможно эти .json можно складывать в артефакты и там каким-то образом поднимать отчет ?
А если делаешь не
-powershell -command allure serve
а команду
-powershell -command allure generate
то папка с allure-report с отчетом появляется?
выполнил allure-generate. Да, папка allure-report появляется на уровень выше папки allure-results(они должны быть на одном уровне ?).
Открыва html - пустая
Не могу сказать насчет уровня, у меня она на одном уровне создается. Мне кажется это зависит от того, откуда запускается команда.
Я слышал, что отчет неправильно отображается в Хроме, вы открываете в этом броузере? Попробуйте в другом броузере открыть.
Папка allure-report появляется в WorkDirectory, применительно к дженкинсу - это в большинстве случаев workspace.
Дело было в (-powershell -command set-location) - не отрабатывала.
Отчет Алюра генерится, но его надо открывать вручную. Как это можно исправить ?
Никогда не делал этой операции через Powershell, использовал обычный git bash/cmd. Возможно это какие-то внутренние запреты самого powershell’a.
Можно ли использовать каким-либо образом переменные среды для файла Name.csproj
содержание которого, а конкретно UserName
ItemGroup
Content
Update=“C:\Users*UserName*.nuget\packages\specflow.allure\2.4.1.1\contentFiles\any\net45\allureConfig.json”>
CopyToOutputDirectory>Always</CopyToOutputDirectory
Content
ItemGroup
А зачем?
Хранить изменяемые файлы в хранилище бинарников, плохая идея. Они должны быть, либо в проекте, либо в соответствующем пути, известном тестам, где можно использовать переменные окружения.
если не указывать путь к NameUI.Spekflow.csproj в виде
C:\Users* UserName *.nuget\packages\specflow.allure\2.4.1.1\contentFiles\any\net45\allureConfig.json
то ругается не найдет файл. Хотелось бы универсальное решение, для запуска на различных компах(ранерах)
C:\Runner2\builds\05ed8cc1\0\remote-platform\uitests-draft\UITests.SpecFlow\bin\Release\net471\allureConfig.json’ не найден.
Вам надо положить этот файл (allureconfig.json) в свой проект тестов, а не дёргать его из нугет пакета, который скачался.
Тогда он будет корректно копироваться в outputdirectory…
хм…
allureConfig.json лежит в проекте на уровне, тестов. И чтобы генерился отчет(локально в том числе)
я поставил настройку “Поставьте свойство у файла, чтобы он копировался при сборке”
После этого в файле Name.csproj прописалось это свойство.
Update=“C:\UsersUserName.nuget\packages\specflow.allure\2.4.1.1\contentFiles\any\net45\allureConfig.json”>
CopyToOutputDirectory>Always</CopyToOutputDirectory
Тогда Вы какой-то не тот файл добавил в проект. Удалите этот и добавьте заново.
дело в том, что я не добавлял allureConfig.json он добавился после того, как я установил SpecFlow.Allure 2.4.1.1 и сбилдил проект.
Удалите Specflow. Он удалит этот файл.
После - добавьте руками файл с таким названием в корень проекта, добавьте его в проект.
Установите пакет заново.
После этого у вас будет редактируемый файл в корне проекта.