Applitools + Specflow+ Selenium + C#

Прошу помощи, уже отчаялся.

Я сделал простой тестовый сценарий с Gherkin и сгенерировал шаги. Я хочу интегрировать в этот процесс Applitools, то есть использовать метод eyes.Check(). Но как бы я ни старался, каждый раз, когда я инициализирую объект eyes, я получаю следующую ошибку: Метод не найден: "Applitools.BatchInfo Applitools.IEyesBase.get_Batch ().

Примеры на applitools.com мне не подходят, потому что та же реализация Ruby для меня не работает, а пример C# не предполагает использования Gherkin.

Мой сценарий:

@Default.Target.Environment:Edu
Feature: LoginScenario

@INWK.LP.C0002
Scenario: L001_Login
When I open Web Site
    And I login as user my_email@edu.hse.ru with pass 12345678
Then I close browser

Мои шаги:

using System.Drawing;
using Applitools;
using Applitools.Selenium;
using Lms.Helpers;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using TechTalk.SpecFlow;
using NUnit.Framework;
using Configuration = Applitools.Selenium.Configuration;

namespace Lms.Steps
{
    [TestFixture]
    [Binding]
    public class LoginInLmsSteps
    {
        private IWebDriver driver;
        private LoginHelper loginHelper;
        private Eyes eyes;
        private EyesRunner runner;

        private string Url => "https://lms.hse.ru/";

        [Before]
        [SetUp]
        public void BeforeEach()
        {
            Configuration config = new Configuration();
            config.SetApiKey("my_key");
            config.SetBatch(new BatchInfo("LMS Batch"));
            config.AddBrowser(800, 600, BrowserType.CHROME);

            runner = new ClassicRunner();

            eyes = new Eyes(runner);

            eyes.SetConfiguration(config);
        }

        [When(@"I open Web Site")]
        public void WhenIOpenWebSite()
        {
            driver = new ChromeDriver();
            driver.Url = Url;
        }
        
        [When(@"I login as user (.*) with pass (.*)")]
        public void WhenILoginAsUserWithPass(string username, string password)
        {
            eyes.Open(driver, "LMS", "Login test", new Size(800, 600));
            eyes.CheckWindow("Login Page");

            loginHelper.Login(username, password);

            eyes.CloseAsync();
        }
        
        [Then(@"I close browser")]
        public void ThenICloseBrowser()
        {
            driver.Quit();
            driver = null;
        }

        [TearDown]
        public void AfterEach()
        {
            // If the test was aborted before eyes.close was called, ends the test as aborted.
            eyes.AbortIfNotClosed();

            //Wait and collect all test results
            TestResultsSummary allTestResults = runner.GetAllTestResults();
        }
    }
}

То есть ловлю ошибку уже на этапе настройки

Буду признателен за любую помощь!

0 ответов

Другие вопросы по тегам