Thr*_*nor 7 c# selenium google-chrome selenium-chromedriver selenium-webdriver
我正在尝试使用我现有的帐户和配置文件中的设置使用selenium加载chrome浏览器。
我可以使用ChromeOptions设置userdatadir和配置文件目录来使其工作。这会像我想要的那样用我的个人资料加载浏览器,但是浏览器随后挂起60秒钟并超时,而没有进行任何自动化操作。
如果我不使用用户数据目录和配置文件设置,则可以正常使用,但不使用我的配置文件。
我所做的阅读指出,一次不能使用相同的配置文件打开一个以上的浏览器,因此我确保在运行程序时没有打开任何文件。即使没有打开其他浏览器,它仍然挂起60秒。
m_Options = new ChromeOptions();
m_Options.AddArgument("--user-data-dir=C:/Users/Me/AppData/Local/Google/Chrome/User Data");
m_Options.AddArgument("--profile-directory=Default");
m_Options.AddArgument("--disable-extensions");
m_Driver = new ChromeDriver(@"pathtoexe", m_Options);
m_Driver.Navigate().GoToUrl("somesite");
Run Code Online (Sandbox Code Playgroud)
它始终挂在GoToUrl上。我不确定还有什么尝试。
Deb*_*anB 12
根据您的代码试验,您尝试加载默认 Chrome 配置文件,这将违反所有最佳做法,因为默认 Chrome 配置文件可能包含以下任一内容:
因此,默认 Chrome 配置文件可能不符合您的测试规范,并且可能会在加载时引发异常。因此,您应该始终使用自定义的 Chrome 配置文件,如下所示。
要创建并打开新的Chrome 配置文件,您需要按照以下步骤操作:
chrome://settings/打开。获取系统中配置文件目录的绝对路径,如下所示:
C:\\Users\\Thranor\\AppData\\Local\\Google\\Chrome\\User Data\\Profile 2
Run Code Online (Sandbox Code Playgroud)现在将profile-directory的值通过ChromeOptions 的一个实例AddArgument和 key user-data-dir一起传递,如下所示:
m_Options = new ChromeOptions();
m_Options.AddArgument("--user-data-dir=C:/Users/Me/AppData/Local/Google/Chrome/User Data/Profile 2");
m_Options.AddArgument("--disable-extensions");
m_Driver = new ChromeDriver(@"pathtoexe", m_Options);
m_Driver.Navigate().GoToUrl("somesite");
Run Code Online (Sandbox Code Playgroud)执行你的 Test
| 归档时间: |
|
| 查看次数: |
12106 次 |
| 最近记录: |