Tôi muốn đặt câu hỏi về lớp EdgeOptions.
Tôi thấy rằng lớp DesiredCapabilities đã lỗi thời hoặc không được dùng nữa từ selen để ủng hộ BrowerOptions (tức là EdgeOption. ChromeOptions, FirefoxOptions).
Bây giờ tôi đã thử thực hiện kiểm tra trình duyệt chéo từ xa với Edge, chrome và firefox.Với Firefox và chrome, thử nghiệm chéo hoạt động rất tốt nhưng với Edge thì không, tôi nhận được thông báo lỗi này"OneTimeSetUp: OpenQA.Selenium.WebDriverException: Lỗi chuyển tiếp phiên mới không thể tìm thấy: Capabilities {browserName: Edge, ms:extensionPaths: [ C:\Program Files (x86)\Micr...], platformName: windows}".
Remote Selenium Hub đang chạy và nút đã được đăng ký nhưng khi kiểm tra bảng điều khiển lưới (https://localhost:4444/grid/console), tôi chỉ có thể thấy rằng không có trình duyệt cạnh nào được hiển thị. Vì vậy, tôi đã thử lệnh sau"java -jar selenium-server-standalone-3.141.59.jar -role webdriver -hub http://10.8.106.66:4444/wd/hub -port 53244 -browser browserName=microsoftedge,maxInstances=1,platform=WINDOWS -browser browserName=chrome,maxInstances=1,platform=WINDOWS -browser browserName=firefox,maxInstances=1,platform=WINDOWS" và vẫn có thể khi thực hiện Grid console (https://localhost:4444/grid/console) vẫn có thể thấy internet explorer và thông báo lỗi tương tự"OneTimeSetUp: OpenQA.Selenium.WebDriverException: Lỗi chuyển tiếp phiên mới không thể tìm thấy: Capabilities {browserName: Edge, ms:extensionPaths: [C:\Program Files (x86)\Micr...], platformName: windows}".
Phiên bản lưới selen là 3.141.59
Hãy giúp tôi. Lớp tập lệnh gặp phải lỗi Edge là:
sử dụng NUnit.Framework;
sử dụng OpenQA.Selenium;
sử dụng OpenQA.Selenium.Support.UI;
sử dụng OpenQA.Selenium.Firefox;
sử dụng OpenQA.Selenium.Edge;
sử dụng OpenQA.Selenium.Chrome;
sử dụng OpenQA.Selenium.Remote;
sử dụng SeleniumExtras.WaitHelpers;
sử dụng SeleniumExtras.PageObjects;
sử dụng Hệ thống;
sử dụng System.Threading;
sử dụng System.Threading.T task;
sử dụng System.Collections.ObjectModel;
sử dụng System.Collections.Generic;
sử dụng POM_API;
không gian tên POM_Web_EXE
{
[TestFixture("Chrome"/, " 97.0.4606.61"//, "các cửa sổ" /)]
[TestFixture("Firefox"/, "92.0.1"//, "các cửa sổ"/)]
[TestFixture("MicrosoftEdge"/, "94.0.992.31"//, "các cửa sổ"/)]
[Parallelizable(ParallelScope.All)]
lớp công khai POM_Web_CrossTest
{
HomePage_API apiHomeInstance;
SearchPage_API apiSearchInstance;
chuỗi mong đợiHomeWebTittle = "Google";
chuỗi search_key = "LamdaTest";
trình điều khiển IWebDriver;
duyệt chuỗi công khai;
// phiên bản chuỗi;
//chuỗi os;
public POM_Web_CrossTest(string browser/*, string version*//*, string os*/)
{
this.browse = trình duyệt;
// this.version = phiên bản;
//this.os = os;
}
[OneTimeSetUp]
Thiết lập khoảng trống công khai ()
{
chuyển đổi (duyệt)
{
trường hợp "MicrosoftEdge":
//Ổ đĩa web cục bộ
driver = new EdgeDriver("C:\Program Files (x86)\Microsoft\Edge\Application");
driver.Manage().Window.Maximize();
nghỉ;
trường hợp "Firefox":
//Ổ đĩa web cục bộ
driver = new FirefoxDriver("C:\Program Files\Mozilla Firefox");
driver.Manage().Window.Maximize();
nghỉ;
trường hợp "Chrome":
//Ổ đĩa web cục bộ
driver = new ChromeDriver("C:\Program Files\Google\Chrome\Application");
driver.Manage().Window.Maximize();
nghỉ;
mặc định:
nghỉ;
}
}
[Kiểm tra, Đặt hàng(1)]
public void HonePage()
{
Console.WriteLine("duyệt:= " + duyệt/* + " phiên bản := " + phiên bản + " os := " + os*/);
apiHomeInstance = new HomePage_API(trình điều khiển);
apiHomeInstance.GotoWebpage();
async void TaskDelay()
{
đang đợi Task.Delay(300);
}
TaskDelay();
nếu (expectedHomeWebTittle == apiHomeInstance.GetCurPageTitle())
{
Khẳng định.AreEqual(expectedHomeWebTittle, apiHomeInstance.GetCurPageTitle());
Console.WriteLine("Tiêu đề Trang chủ Dự kiến Đã Thông qua");
}
TaskDelay();
Khẳng định.AreEqual(true, apiHomeInstance.GetWebPageLogo());
Console.WriteLine(apiHomeInstance.SearchKey());
TaskDelay();
apiHomeInstance.SearchKeyWord(search_key);
}
[Kiểm tra, Đặt hàng(2)]
khoảng trống công khai Search_WebPage()
{
apiSearchInstance = new SearchPage_API(trình điều khiển);
// trang mục tiêu dự kiến
string kỳ vọngTargetPageTitle = "Công cụ kiểm tra trình duyệt chéo mạnh mẽ nhất trực tuyến | LambdaTest";
FinalPageManipulation_Load_API clickTargetlink = apiSearchInstance.ClickFinalTargetLink();
//Thao tác cuối cùng của trang đích
Assert.AreEqual(true, clickTargetlink.FinalLogoDisplay());
Assert.AreEqual(expectTargetPageTitle, clickTargetlink.getWebtitle());
nếu (mong đợiTargetPageTitle == clickTargetlink.getWebtitle())
{
Console.WriteLine("Tiêu đề trang mục tiêu chính dự kiến đã thông qua");
}
Assert.AreEqual(true, clickTargetlink.FinalPageRelease());
}
[OneTimeTearDown]
khoảng trống công khai End_POM_EXE()
{
async void TaskDelay()
{
đang đợi Task.Delay(300);
}
bool passResults = TestContext.CurrentContext.Result.Outcome.Status == NUnit.Framework.Interfaces.TestStatus.Passed;
cố gắng
{
((IJavaScriptExecutor)driver).ExecuteScript("LamdaTest status " + (passedResults ? "Passed" : "Failed"));
}
cuối cùng
{
TaskDelay();
driver.Quit();
}
}
}
}