Я хотел бы задать вопрос по классу EdgeOptions.
Я вижу, что класс DesiredCapabilities устарел или устарел по сравнению с селеном в пользу BrowerOptions (т.е. EdgeOption. ChromeOptions, FirefoxOptions).
Теперь я попытался провести удаленное кросс-браузерное тестирование с помощью Edge, Chrome и Firefox.С Firefox и Chrome перекрестное тестирование работает так хорошо, но ни с Edge я не получаю это сообщение об ошибке «OneTimeSetUp: OpenQA.Selenium.WebDriverException: ошибка переадресации нового сеанса не может быть найдена: Возможности {browserName: Edge, ms:extensionPaths: [ C:\Program Files (x86)\Micr...], имя_платформы: windows}".
Удаленный Selenium Hub запущен, и узел зарегистрирован, но при проверке консоли сетки (https://localhost:4444/grid/console) я вижу только то, что браузер Edge не отображается. Поэтому я попробовал следующую команду: "java -jar selenium-server-standalone-3.141.59.jar -role webdriver -hub http://10.8.106.66:4444/вд/концентратор -port 53244 -browser browserName=microsoftedge,maxInstances=1,platform=WINDOWS -browser browserName=chrome,maxInstances=1,platform=WINDOWS -browser browserName=firefox,maxInstances=1,platform=WINDOWS" и по-прежнему может выполнять консоль Grid (https://localhost:4444/grid/console) по-прежнему может видеть Internet Explorer и то же сообщение об ошибке «OneTimeSetUp: OpenQA.Selenium.WebDriverException: ошибка переадресации нового сеанса не может быть найдена: Возможности {browserName: Edge, ms:extensionPaths: [C:\Program Files (x86)\Micr...], имя_платформы: windows}".
Версия селеновой сетки 3.141.59.
Пожалуйста помоги. Класс скрипта, в котором возникает ошибка Edge:
с помощью NUnit.Framework;
с помощью OpenQA.Selenium;
с помощью OpenQA.Selenium.Support.UI;
с помощью OpenQA.Selenium.Firefox;
с использованием OpenQA.Selenium.Edge;
с помощью OpenQA.Selenium.Chrome;
используя OpenQA.Selenium.Remote;
использование SeleniumExtras.WaitHelpers;
используя SeleniumExtras.PageObjects;
с помощью системы;
использование System.Threading;
использование System.Threading.Tasks;
используя System.Collections.ObjectModel;
используя System.Collections.Generic;
используя POM_API;
пространство имен POM_Web_EXE
{
[ТестФикстура("Хром"/, " 97.0.4606.61"//, "окна" /)]
[ТестФикстура("Firefox"/, "92.0.1"//, "окна"/)]
[TestFixture("MicrosoftEdge"/, "94.0.992.31"//, "окна"/)]
[Распараллеливаемый(ParallelScope.Все)]
открытый класс POM_Web_CrossTest
{
HomePage_API apiHomeInstance;
SearchPage_API APISearchInstance;
строка ожидаемого HomeWebTittle = "Google";
string search_key = "LamdaTest";
драйвер IWebDriver;
просмотр общедоступной строки;
// строковая версия;
// строка ОС;
public POM_Web_CrossTest (строка браузера/*, версия строки*//*, строка os*/)
{
this.browse = браузер;
//эта.версия = версия;
//это.ос = ос;
}
[OneTimeSetUp]
настройка публичной пустоты ()
{
переключаться (просматривать)
{
чехол "MicrosoftEdge":
//Локальный веб-диск
driver = new EdgeDriver("C:\Program Files (x86)\Microsoft\Edge\Application");
Driver.Manage().Window.Maximize();
сломать;
корпус "Файрфокс":
//Локальный веб-диск
driver = new FirefoxDriver("C:\Program Files\Mozilla Firefox");
Driver.Manage().Window.Maximize();
сломать;
чехол "Хром":
//Локальный веб-диск
driver = new ChromeDriver("C:\Program Files\Google\Chrome\Application");
Driver.Manage().Window.Maximize();
сломать;
По умолчанию:
сломать;
}
}
[Тест, Заказ(1)]
публичная пустота HonePage()
{
Console.WriteLine("browse:= " +browse/* + " version :=" + version + " os := " + os*/);
apiHomeInstance = новый API домашней страницы (драйвер);
apiHomeInstance.GotoWebpage();
асинхронный void TaskDelay()
{
ожидание Task.Delay(300);
}
Задержка Задачи();
если (ожидаемыйHomeWebTittle == apiHomeInstance.GetCurPageTitle())
{
Assert.AreEqual(expectedHomeWebTittle, apiHomeInstance.GetCurPageTitle());
Console.WriteLine("Ожидаемый заголовок домашней целевой страницы пройден");
}
Задержка Задачи();
Assert.AreEqual(true, apiHomeInstance.GetWebPageLogo());
Console.WriteLine(apiHomeInstance.SearchKey());
Задержка Задачи();
apiHomeInstance.SearchKeyWord(search_key);
}
[Испытание, Приказ(2)]
публичная пустота Search_WebPage()
{
apiSearchInstance = новый SearchPage_API (драйвер);
//ожидаемая целевая страница
string expectTargetPageTitle = "Самый мощный онлайн-инструмент для кросс-браузерного тестирования | LambdaTest";
FinalPageManipulation_Load_API clickTargetlink = apiSearchInstance.ClickFinalTargetLink();
// Окончательная обработка целевой страницы
Assert.AreEqual(true, clickTargetlink.finalLogoDisplay());
Assert.AreEqual(expectTargetPageTitle, clickTargetlink.getWebtitle());
если (expectTargetPageTitle == clickTargetlink.getWebtitle())
{
Console.WriteLine("Ожидаемый заголовок основной целевой страницы пройден");
}
Assert.AreEqual(true, clickTargetlink.FinalPageRelease());
}
[OneTimeTearDown]
публичная пустота End_POM_EXE()
{
асинхронный void TaskDelay()
{
ожидание Task.Delay(300);
}
bool passResults = TestContext.CurrentContext.Result.Outcome.Status == NUnit.Framework.Interfaces.TestStatus.Passed;
пытаться
{
((IJavaScriptExecutor)драйвер).ExecuteScript("Статус LamdaTest" + (passedResults? "Пройдено" : "Ошибка"));
}
Ну наконец то
{
Задержка Задачи();
водитель.Выйти();
}
}
}
}