当我在无头模式下使用ChromeDriver运行硒测试时,addCookie方法调用会导致异常;测试全部在正常模式下工作
我的Chrome浏览器版本为75.0.3770.90,ChromeDriver版本为75.0.3770.8。操作系统是Mac OS X 10.14.5
我得到的异常是:
while
导致该问题的代码是:
// Guess number game
// NOTE! Works perfect if I use a constant number instead of Random.
Random rnd = new Random();
int number = rnd.Next(1, 100);
int userInput = 0;
bool isPlaying = true;
while (isPlaying) {
try {
userInput = Int32.Parse(Console.ReadLine());
}
catch (FormatException e)
{
Console.WriteLine(e.Message);
}
if (userInput < number) {
Console.WriteLine("more");
} else if (userInput > number) {
Console.WriteLine("less");
} else {
isPlaying = false;
}
}
Console.WriteLine("You win");
答案 0 :(得分:1)
可能您在导航到站点之前添加了cookie。您应该先导航到您的网址
driver.get("yourWebPage");
并且仅在此之后添加cookie
driver.manage().addCookie(cookie);
为了更好地分析问题所在,如果以上方法无济于事,则必须添加程序的更多代码。
也可能是this的副本。
答案 1 :(得分:0)
在无头模式下,您必须在页面url中具有协议,而在正常模式下,Web驱动程序默认为http。因此,一旦我们将“ localhost:8080 / path”替换为“ http://localhost:8080/path”,它就会起作用。