1

所以我遇到了一个有趣的问题,试图让 Selenium 正常工作

最初我有这个设置:

  • CassiniDev 作为我的测试套件的一部分启动
  • 外部 Selenium 网格连接到 CassiniDev 实例以测试软件。

与 IIS Express 相比,这种方法的好处是:

  • CassiniDev 允许外部连接而无需复杂的技巧,这意味着网格可以轻松连接。
  • 使用网格可以让我轻松使用更多的计算机和不同的平台。
  • 使用 CassiniDev 使我的代码覆盖率开箱即用(一些解决方案可以让我在 IIS 上获得代码覆盖率,但代码覆盖率是我现在切换到 IIS 的最小问题)。

但是我最近将 OWIN 添加到该项目中,并且 OWIN无法与 CassiniDev 一起运行,因为需要集成的 IIS 管道才能正常工作(请参阅“此操作需要 IIS 集成管道模式。”),这给我留下了两个选择:

  • 使用 IIS Express,失去代码覆盖率,失去网格,失去多平台测试,复杂的启动/关闭,开发机器必须安装 Selenium 才能在本地运行测试,构建代理需要安装 Selenium。
  • 使用完整的 IIS,失去代码覆盖,保持网格,保持多平台,大量复杂的测试(协调 IIS 部署),构建代理需要安装完整的 IIS 和任何依赖项,想要运行 Selenium 的开发机器需要安装 IIS。
  • 将应用程序发布到 IIS 服务器进行测试,不进行本地开发测试,不进行并行测试(除非我们有复杂的发布设置)。
  • 将 Selenium 测试扔进垃圾箱。
  • 查看 OWIN 自托管(站点包含 webforms 的东西,所以我认为我不能自托管,我也不确定当我部署到 IIS时这与多少兼容)
  • 测试时禁用 OWIN(将我实际使用 OWIN 的能力限制为侧模块或我不测试的系统)

所有这些解决方案充其量似乎都很糟糕,失去了我使用 CassiniDev 的所有好处。还有其他选择/想法吗?

4

0 回答 0