我正在使用selenium webdriver和C#自动化。有没有办法捕获我的浏览器导航到的所有网址,而我的Selenium自动化测试运行使用外部工具,如Fiddler core / wireshark。我的意思是,当我的测试继续运行时,我希望其中一些工具可以并行捕获我的网址,以便我的测试失败,我可以通过使用最后几个网址(从失败点)进一步调查来调试问题。
这真的有可能吗?我是否需要使用单独的线程来使用其中一个工具(Fiddler / wireshark /任何其他工具)来捕获网址?
这真的可以做到吗
答案 0 :(得分:2)
有几个选择。
driver.Url
的包装器代码并将其存储到列表中。此包装器代码将检查driver.Url
是否与对象中最后存储的条目不同,如果它不同,则会将其添加到列表中。所有都有利弊。 3会给你最大的控制权,因为你的测试本身会收集URL并在代码中维护一个你可以做你想做的事情的列表。 1当然会为您提供最强大的细节,具体取决于您如何设置wireshark,您可以分析整个机器和网络体验。 2是你的测试仍然驱动它的中间地带,但结果是分开的...但是作为浏览器的一部分,你必须避免在测试后进行清理......如果你有更多的测试而不是一次执行这个可能导致很多问题...