我使用 Selenium 编写 UI 自动化测试。我注意到,当我创建 chromedriver.exe 实例时 -> ~8 chrome.exe 进程出现在任务管理器中。
运行 1 个测试时的任务管理器屏幕截图:

因此,当我并行运行时,假设有 8 个测试,任务管理器中有很多 chrome.exe 实例,它们使用一些端口并加载 CPU 和内存。
它是按设计工作的吗?为什么一个 chromedriver.exe 需要这么多 chrome.exe 实例?这是可配置的吗?
在我的代码中,我只有一个“Chrome”类。它的构造函数创建一个新的 chromedriver.exe 实例:
Chrome chrome = new Chrome();
public class Chrome
{
public OpenQA.Selenium.Chrome.ChromeDriver Driver;
public Chrome(bool incognitoMode = false, bool maximizeWindow = true)
{
ChromeOptions options = new ChromeOptions();
if (incognitoMode)
{
options.AddArguments("--incognito");
}
Driver = new ChromeDriver(options);
Driver.Manage().Timeouts().PageLoad = TimeSpan.FromSeconds(360);
if (maximizeWindow)
Driver.Manage().Window.Maximize();
}
/////////////////////////////////////////////
}
Run Code Online (Sandbox Code Playgroud) selenium google-chrome webdriver selenium-chromedriver selenium-webdriver