让我们假设你有一个selenium webdriver测试失败并需要更新,并且需要一段时间才能到达失败点。每次你想尝试新代码时,你都必须从头开始运行并等待。有没有办法在不从头开始测试的情况下执行新的WebDriver代码?
我知道使用ruby和python,你可以使用交互式shell来执行代码,并在webdriver启动的浏览器中查看它。但是有什么方法可以用C#获得类似的东西吗?
我的第一个想法是保持浏览器窗口打开并序列化webdriver对象,以便在自己的测试中运行新代码时可以使用它,但这只是一个想法。有什么想法吗?
答案 0 :(得分:0)
可能重用以前的webdriver会话来启动新测试(或webdriver实例)。 基本上是保存和检索selenium内部使用的 sessionId 。
这是一篇关于如何在v2.49.0之前在C#中实现的帖子 http://www.binaryclips.com/2016/03/selenium-webdriver-in-c-how-to-use.html
从v2.49.0开始,sessionId在RemoteWebDriver中公开(参见https://github.com/SeleniumHQ/selenium/blob/master/dotnet/CHANGELOG),这样可以更容易地实现会话重用!