有没有办法在Selenium Web Driver中使用同一个Firefox浏览器会话(如果当前浏览器崩溃或关闭)?
假设我有1000行代码需要检查,并且在调试第800行时,浏览器崩溃了,然后IDE(eclipse)不允许进一步调试。所以我必须重新开始测试。是否可能从崩溃点开始启动新的浏览器会话?
提前感谢您的回复。
有没有办法在Selenium Web Driver中使用同一个Firefox浏览器会话(如果当前浏览器崩溃或关闭)?
假设我有1000行代码需要检查,并且在调试第800行时,浏览器崩溃了,然后IDE(eclipse)不允许进一步调试。所以我必须重新开始测试。是否可能从崩溃点开始启动新的浏览器会话?
提前感谢您的回复。
我不这么认为。场景/测试应该是独立的,无论场景是否成功结束,会话都将结束。
无论如何,您都不希望场景(应该是独立的)使用try-catch或do-while,而应该通过或失败。
对于浏览器缓存问题,您需要检查导致此问题的条件,并尝试修复它并更改驱动程序(如果需要)以使用稳定的驱动程序。
阅读问题描述让我想到可能不是这个问题,真正的问题是测试时间太长。
您可能希望进行代码审查并查看您可以改进什么。
一些常规提示/最佳实践:
1. 使每个场景尽可能简单
2. 每个场景必须专注于特定流程并检查某些特定结果
3. 场景/测试应快速执行
4. 场景应可靠且与结果一致(稳定)
一些不良实践:
1. 当一个场景检查了许多其他场景未涵盖的内容失败时,将导致某些区域/功能未经测试/覆盖
2. 在不同位置加载具有多个检查的场景可能会增加失败的机会,因为其中任何一个检查都可能失败
3. 基于前面的原因,增加检查数量可能会在审查结果时给你错误的想法
QMetry自动化框架提供了使用现有驱动程序会话的功能,这在自动化开发和调试过程中非常有帮助。
webdriver.remote.session
属性将其用于执行