Всем привет! Не могу заставить работать вместе Specflow 3 и Allure.
По гайдам и репозиториям из интернета запилил вот такую штуку:
using BoDi;
using TechTalk.SpecFlow;
namespace InternalAutomation.Helpers
{
[Binding]
class Hooks
{
private Browser _browser;
private readonly IObjectContainer _objectContainer;
public Hooks(IObjectContainer objectContainer)
{
_objectContainer = objectContainer;
}
[BeforeScenario]
public void Setup()
{
_browser = new Browser();
_objectContainer.RegisterInstanceAs(_browser);
}
[AfterScenario]
public void TearDown()
{
_browser.Termination();
}
}
}
Ну и заготовка под работу с браузером:
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using System;
namespace InternalAutomation.Helpers
{
public class Browser
{
public IWebDriver driver;
public Browser()
{
Start();
}
private void Start()
{
ChromeOptions opt = new ChromeOptions();
opt.AddArgument("--window-size=1920,1080");
opt.AddArgument("--enable-automation");
opt.AddArgument("--no-sandbox");
opt.AddArgument("--disable-notifications");
opt.AddUserProfilePreference("credentials_enable_service", false);
opt.AddUserProfilePreference("profile.password_manager_enabled", false);
driver = new ChromeDriver(opt);
driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(4);
}
public void Termination()
{
driver.Quit();
}
}
}
Без аллюра тесты запускаются, все окей
как только аллюр пихаю в зависимости
и указываю его в конфиге SpecFlow
ошибка при запуске тестов
Message: OneTimeSetUp: System.MissingMethodException : Method not found: 'Void BoDi.ObjectContainer.RegisterTypeAs(System.String)'.
в интернете советуют что-то такое
objectContainer.ResolveAll<UIItemFactory>()
to
objectContainer.RegisterTypeAs<THE_IMPLEMENTATION, UIItemFactory>()
Насколько я понял, нужно каким-то образом аллюр подпихнуть в зависимости, но как это сделать моя башка не понимает. Помогите, пожалуйста!