我正在使用C#+ Selenium WebDriver进行自动化测试。 我想知道是否有可能在虚拟化的AppV 5.1浏览器(Firefox,Chrome)上运行测试。
我已尝试将ChromeOptions.BinaryLocation设置为%PROGRAMDATA%\App-V\<PackageId>\<VersionId>\Root\VFS\ProgramFilesX86\Google\Chrome\Application
下的chrome.exe,但它无法正常工作。
每个测试都会崩溃并显示错误
Error Message:
Initialization method Am.Tests.Login_Test.Init threw exception. System.Invali
dOperationException: System.InvalidOperationException: unknown error: cannot fin
d Chrome binary
(Driver info: chromedriver=2.22.397933 (1cab651507b88dec79b2b2a22d1943c01833cc
1b),platform=Windows NT 6.1.7601 SP1 x86_64).
Stack Trace:
at OpenQA.Selenium.Remote.RemoteWebDriver.UnpackAndThrowOnError(Response err
orResponse)
at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecu
te, Dictionary`2 parameters)
at OpenQA.Selenium.Remote.RemoteWebDriver.StartSession(ICapabilities desiredC
apabilities)
at OpenQA.Selenium.Remote.RemoteWebDriver..ctor(ICommandExecutor commandExecu
tor, ICapabilities desiredCapabilities)
at OpenQA.Selenium.Chrome.ChromeDriver..ctor(ChromeOptions options)
at Am.Logic.UiContext..ctor(Browser brw)
at Am.Tests.Login_Test.Init()
请澄清
答案 0 :(得分:1)
仅为该EXE设置路径是不够的。启动App-V应用程序时,App-V客户端会检测并接管其进程,并在容器化泡泡中运行它们。
与这些流程互动的唯一方法是在 bubble 中运行您的流程。你可以launch an external process in the App-V bubble使用几种方法。