Azure DevOps正在VM上触发并运行测试。
我所有的测试在本地计算机上都可以正常工作。
在VM上,尝试使用ChromeDriver和WebDriverManager启动Chrome浏览器时,在LaunchChromeDriver方法上测试失败,并在新的ChromeDriver(选项)上执行“访问被拒绝” 失败;
方法是这样的:
public static IWebDriver LaunchChromeDriver()
{
try
{
new WebDriverManager.DriverManager().SetUpDriver(new ChromeConfig());
ChromeOptions options = new ChromeOptions();
driver = new ChromeDriver(options);
return driver;
}
catch(Exception e)
{
log.info("Exception is "+e);
return null;
}
}
我缺少什么吗?还是需要修改代码?有人经历过吗?
获取如下异常:
System.ComponentModel.Win32Exception(0x80004005):访问被拒绝 在System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo) 在OpenQA.Selenium.DriverService.Start() 在OpenQA.Selenium.Remote.DriverServiceCommandExecutor.Execute(Command commandToExecute) 在OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute,Dictionary`2 parameters) 在OpenQA.Selenium.Remote.RemoteWebDriver.StartSession(ICapabilities wantedCapabilities) 在OpenQA.Selenium.Remote.RemoteWebDriver..ctor(ICommandExecutor commandExecutor,ICapabilities requiredCapabilities) 在OpenQA.Selenium.Chrome.ChromeDriver..ctor(ChromeDriverService服务,ChromeOptions选项,TimeSpan commandTimeout)
答案 0 :(得分:0)
您应指定chromedriver.exe可执行文件路径:
driver = webdriver.Chrome(executable_path=r"C:\Chrome\chromedriver.exe")
对于Windows,在chromedriver.exe上为所有人允许读取和执行权限:
对于Linux: