【问题标题】:Getting HTTP Status Code by Selenium WebDriver C#通过 Selenium WebDriver C# 获取 HTTP 状态码
【发布时间】:2013-08-31 06:00:45
【问题描述】:

我正在使用 Selenium、C#、NUnit 编写自动化测试。

是否可以通过 WebDriver 获取 HTTP 状态代码,以便可以向用户提醒由于 HTTP 请求而失败的测试?

【问题讨论】:

标签: c# http selenium selenium-webdriver nunit


【解决方案1】:

这并不理想,但我将页面文本与以下正则表达式进行比较,因为在我的设置中,文本伴随网页错误:

(?:(access is denied)|(access is forbidden)|(server error)|(not found))

【讨论】:

    【解决方案2】:

    不是没有外部工具号。

    你看,这在过去已经被多次提出,并且是 Selenium 的official issue tracker 中最大的“问题”之一。 particular issue 已被反弹并基本上确定它不在 Selenium 的范围内。

    然而,这并不意味着它是不可能的。幸运的是,您使用的是 C#,所以它比您想象的要容易一些。

    最近,Selenium 的一位开发人员写了一篇博客文章,概述了exactly how to do this in C#。这是一篇由三部分组成的博客文章,用于帮助解释每个步骤并使用一个名为 Fiddler 的外部工具(顺便说一句,这是一个很棒的工具)。

    Fiddler 是一个代理,并且有一个 C# API 允许您拦截请求。因此,这意味着您可以简单地“指向” Selenium 以使用该代理,然后连接到 Fiddler 的 API 以准确检查请求的状态代码。

    我只是链接到博客文章,而不是给你代码,因为在这些文章中已经非常详尽地解释了。

    也许可以尝试一下,如果在实施他的设计时遇到任何问题,请再回来。顺便说一句,这个人也是 StackOverflow 的成员,所以也可以看到你的帖子。

    【讨论】:

      猜你喜欢
      • 2018-10-28
      • 1970-01-01
      • 1970-01-01
      • 2012-01-19
      • 2021-04-23
      • 1970-01-01
      • 2011-09-24
      • 2011-10-18
      • 1970-01-01
      相关资源
      最近更新 更多