Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 有没有办法只登录一次,然后跳过登录以进行下一次测试?_C#_Selenium_Google Chrome_Selenium Chromedriver - Fatal编程技术网

C# 有没有办法只登录一次,然后跳过登录以进行下一次测试?

C# 有没有办法只登录一次,然后跳过登录以进行下一次测试?,c#,selenium,google-chrome,selenium-chromedriver,C#,Selenium,Google Chrome,Selenium Chromedriver,我用的是铬和硒与C#。我只想在第一次测试中登录,然后在下一次测试中跳过登录以节省时间。有办法做到这一点吗 ChromeOptions options = new ChromeOptions(); options.AddArguments("start-maximized"); options.AddArguments("ignore-certificate-errors"); options.AddArguments("user-data-dir=C:/Temp/chrome"); drive

我用的是铬和硒与C#。我只想在第一次测试中登录,然后在下一次测试中跳过登录以节省时间。有办法做到这一点吗

ChromeOptions options = new ChromeOptions();
options.AddArguments("start-maximized");
options.AddArguments("ignore-certificate-errors");
options.AddArguments("user-data-dir=C:/Temp/chrome");

driver = new ChromeDriver(options);

这取决于您愿意如何运行测试用例。假设您愿意只在单个登录的浏览器上运行所有测试用例,那么您可以这样做

在beforesuite或beforetest中启动浏览器并登录。将相同的浏览器实例或webdriver实例传递给其他测试用例。它会导致依赖性,并避免使用并行执行,这在测试用例数量增加时非常有用

另一种方法是使用已有的chrome配置文件。看看这个例子

一种破解方法是在初次登录时从浏览器获取cookie,并将这些cookie添加到每个新浏览器(启动时)以跳过登录 阅读此内容了解更多信息