【问题标题】:Essential Ruby gems?必不可少的红宝石宝石?
【发布时间】:2009-06-30 07:43:05
【问题描述】:

我们开始标准化基于 Ruby 的测试框架,最近在基于 RSpec 和 Cucumber 的测试中取得了一些非常好的结果。由于这是一家大型企业,我们将尝试将一组“标准”的 Ruby gem 放在一起进行测试,因为我们知道我们只会得到大约 90% 的正确率,因为使用了广泛的技术组合.

到目前为止,我们已经确定需要能够支持的关键技术:

  • 消息传输层:WebSphere MQ、Tibco(在我们的测试用例中,我们需要能够读取/写入消息并清除队列)
  • 数据库:SQL Server、Oracle、Sybase(作为测试用例的一部分,我们需要能够对每个数据库执行 CRUD 操作)
  • 用户界面:Web、.NET、Java/Swing、Silverlight(理想情况下,我们能够通过适当的界面自动驱动这些 UI)

作为起点,我们决定要安装以下一组 gem(除了 Ruby 本身附带的那些):

  • 黄瓜(加上锄头和其他依赖项)
  • rubywmq(用于涉及 WebSphere MQ 的测试)
  • webrat
  • watir(适用于那些 webrat 不会削减它的情况)
  • rails(与其说是 Rails 本身,不如说是 Activerecord 和各种作为依赖关系的 DB 驱动程序以及 rake)
  • ruby-oci8(用于 Oracle)

对于 Silverlight 应用,我们希望能够通过 IronRuby 对其进行测试,但目前这对我们来说是非常未知的领域。

两个问题:

  • 我们错过了任何其他关键的宝石吗?你不能没有的东西?什么是好/坏/丑?
  • 驱动 Java/Swing、Silverlight 和 .NET 用户界面的任何参考来源?我知道 RSpec 书,但还有其他书吗?

提前致谢

【问题讨论】:

  • 好问题!

标签: ruby rubygems automated-tests gem


【解决方案1】:

我会补充

  • Mocha。如果您使用 Cucumber、Rspec 或 ActiveSupport,它可能会在安装后自动加载。
  • Test::Unit 或 RSpec。第一个不是 GEM,它是一个标准的 Ruby 库。就我个人而言,我是一名 Test::Unit 专家,而不是 RSpec 用户,但是您可能想尝试一下 RSpec。
  • Shoulda Shoulda 由添加到 Test::Unit 框架的测试宏、断言和助手组成。
  • Remarkable Remarkable 是所有 Shoulda 宏到 RSpec 的端口。

你可能还想使用

  • RCov 检查您的 LOC

与测试不严格相关,但始终与代码质量有关:

  • Flay 分析 ruby​​ 代码的结构相似性。
  • Flog 向您展示了您编写的最折磨人的代码。
  • Reek Ruby 的代码气味检测器
  • Roodi 解析您的 Ruby 代码并根据已配置的检查向您发出有关设计问题的警告。

【讨论】:

  • 很好的答案——我以前用过摩卡,但其余的大部分对我来说都是新的。感谢您抽出宝贵时间创建此列表
【解决方案2】:

用于解析 XML 的 Nokogiri 是另一个

【讨论】:

  • AFAIK,webrat 依赖于 Nokogiri,所以你会在安装 webrat 时安装它。
【解决方案3】:

Zentest,对测试很重要

还有 Mongrel Passenger 用于应用程序部署

【讨论】:

  • 感谢您的建议,但我应该更清楚地描述我们的情况。我们不进行 Ruby 开发(现阶段);我们只是使用 Ruby 来测试我们的 Java/.NET 应用程序。
【解决方案4】:

一些非常好的用于 irb/rails 控制台的 gem...

  • Pry - 使您能够lscd 围绕可用对象。显示方法的来源、显示 rails 模型...以及大量其他功能

  • irbtools - 集合了一堆工具(包括wirb,hirb,interactive_editor(让你打开emacs,vim等),coderay,... github页面上的列表)

【讨论】:

    猜你喜欢
    • 2019-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多