Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/52.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应用程序_Ruby On Rails_Testing_Rspec_Tdd_Bdd - Fatal编程技术网

Ruby on rails 何时开始测试Rails应用程序

Ruby on rails 何时开始测试Rails应用程序,ruby-on-rails,testing,rspec,tdd,bdd,Ruby On Rails,Testing,Rspec,Tdd,Bdd,我真的很喜欢用rspec和cucumber进行TDD和BDD测试的想法,但是我不完全确定什么时候用一个新的应用程序开始这些事情。我不想开始得太早,因为这似乎不是一个好主意,但同时我也不想在开始测试之前扩展太多应用程序 所以我的问题是-什么时候开始写测试 我正计划用Rails制作一个简单的应用程序,并希望使用我学到的所有最佳实践。与您所说的“过早开始”相反,一些开发策略(ie),您首先要做的事情之一是编写测试,测试显然会失败,然后编写代码使测试通过。通过这种方式,您可以清楚地定义您希望应用程序做什

我真的很喜欢用rspec和cucumber进行TDD和BDD测试的想法,但是我不完全确定什么时候用一个新的应用程序开始这些事情。我不想开始得太早,因为这似乎不是一个好主意,但同时我也不想在开始测试之前扩展太多应用程序

所以我的问题是-什么时候开始写测试


我正计划用Rails制作一个简单的应用程序,并希望使用我学到的所有最佳实践。

与您所说的“过早开始”相反,一些开发策略(ie),您首先要做的事情之一是编写测试,测试显然会失败,然后编写代码使测试通过。通过这种方式,您可以清楚地定义您希望应用程序做什么(和不做什么)。有些人发现这种方法效率很高。

与您所说的“过早开始”一些开发策略(ie)相反,您首先要做的事情之一是编写测试,测试显然会失败,然后您编写代码使测试通过。通过这种方式,您可以清楚地定义您希望应用程序做什么(和不做什么)。一些人发现这种方法效率很高。

@JTG是正确的,但需要注意的是,如果您不知道将要开发什么,这对许多人来说都是早期的事情,那么您可能需要在一开始不进行测试的情况下进行开发。这有助于程序员尽早了解他们的环境以及构建过程中涉及的内容


如果在开发之前没有编写测试,可以返回编写这些测试,修改代码使测试失败,然后更改代码使其通过。一旦你知道自己在做什么,这并不是前进的最佳方式,但同时也是一个可以接受的解决办法。

@JTG是正确的,有一点需要注意的是,如果你不知道自己将要开发什么,这对很多人来说都是早期发生的,那么你可能首先需要在没有测试的情况下开发。这有助于程序员尽早了解他们的环境以及构建过程中涉及的内容


如果在开发之前没有编写测试,可以返回编写这些测试,修改代码使测试失败,然后更改代码使其通过。一旦你知道自己在做什么,这不是前进的最佳方式,但同时也是可以接受的解决办法。

好吧,提供的答案很好,但如果你说你喜欢TDD的想法,那就意味着你喜欢先编写测试(以及其他一些TDD想法)。。这就是为什么我对你的问题有点困惑(如果我误解了你,请原谅)。无论如何,我是这么想的:不要害怕在一开始就写测试。根据TDD,您只需为下一个开发步骤编写测试。所以一开始你的测试很可能很简单。例如,有人可能只希望某个操作返回成功响应。然后你让它通过执行控制器和操作,等等。

好吧,提供的答案很好,但是如果你说你喜欢TDD的想法,那就意味着你喜欢先编写测试(以及其他一些TDD想法)。。这就是为什么我对你的问题有点困惑(如果我误解了你,请原谅)。无论如何,我是这么想的:不要害怕在一开始就写测试。根据TDD,您只需为下一个开发步骤编写测试。所以一开始你的测试很可能很简单。例如,有人可能只希望某个操作返回成功响应。然后通过执行控制器和操作,等等。

谢谢,我听说了。我只是感到困惑,如果在我几乎没有任何控制器或模型的情况下开始编写测试是否可以。我还听说写太多的测试可能是件坏事。但再次感谢你的评论,这让我明白了一点。好吧,你不想被困在除了写测试之外什么都不做的事情中。就像编程中的大多数事情一样,你只需要找到最适合你的东西(或者完全按照你公司的指示去做),谢谢你,我听说了。我只是感到困惑,如果在我几乎没有任何控制器或模型的情况下开始编写测试是否可以。我还听说写太多的测试可能是件坏事。但再次感谢你的评论,这让我明白了一点。好吧,你不想被困在除了写测试之外什么都不做的事情中。就像编程中的大多数事情一样,你只需要找到最适合你的东西(或者完全按照你的公司告诉你的去做。)是的,我想我还不够清楚。我只是不确定测试一开始就这么简单是否可以。但现在我明白了。谢谢。是的,我想我还不够清楚。我只是不确定测试一开始就这么简单是否可以。但现在我明白了。非常感谢。