Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 您是否应该测试Rails应用程序使用的gems?如果是的话,你怎么办?_Ruby On Rails_Testing_Rubygems - Fatal编程技术网

Ruby on rails 您是否应该测试Rails应用程序使用的gems?如果是的话,你怎么办?

Ruby on rails 您是否应该测试Rails应用程序使用的gems?如果是的话,你怎么办?,ruby-on-rails,testing,rubygems,Ruby On Rails,Testing,Rubygems,我计划在Rails项目中使用gem作为清理用户提交的HTML片段的一种方式。Github上的gem源代码包括一组健壮的测试,尽管它们没有包含在最终的gem中。在我的模型测试中,我想再次验证gem是否做了它应该做的事情,并且我的模型只存储干净的HTML。在我的模型测试中重新创建所有的gem测试似乎有些过分,我更希望让我的测试只确保模型的before_save过滤器(调用Sanitize gem)工作。处理这个问题的最佳方法是什么 另一方面,在研究这个问题时,我遇到了RubyGems领域,它看起来很

我计划在Rails项目中使用gem作为清理用户提交的HTML片段的一种方式。Github上的gem源代码包括一组健壮的测试,尽管它们没有包含在最终的gem中。在我的模型测试中,我想再次验证gem是否做了它应该做的事情,并且我的模型只存储干净的HTML。在我的模型测试中重新创建所有的gem测试似乎有些过分,我更希望让我的测试只确保模型的before_save过滤器(调用Sanitize gem)工作。处理这个问题的最佳方法是什么


另一方面,在研究这个问题时,我遇到了RubyGems领域,它看起来很有希望,但要求gem作者选择每个gem。

我不知道这是否是您想要的答案,但我的一般原则是不为第三方库编写测试。更确切地说,为那些库的集成点编写测试,或者在这些库之上编写代码。我将包括一个测试,以确保正确调用before_save筛选器,并保持该状态。

我认为这个答案是有价值的,应该是经验法则。显然,测试应用程序使用的每个gem似乎都很愚蠢。我特别询问这个gem,因为如果它的测试突然失效(可能是一次小升级破坏了某些东西,但不足以触发错误),那么我的应用程序就会突然受到攻击。