Ruby on rails 当一个Test::Unit测试运行时,我如何看到实际发生了什么?

Ruby on rails 当一个Test::Unit测试运行时,我如何看到实际发生了什么?,ruby-on-rails,ruby,unit-testing,testing,Ruby On Rails,Ruby,Unit Testing,Testing,在Rails应用程序中,我有一个失败的Test::Unit功能测试,但控制台上的输出并没有告诉我多少 如何查看请求、响应、闪存、会话、变量集等 有没有像 rake test specific_test_file --verbose 在失败的测试中使用p@request等。它很难看,但可以工作在失败的测试中使用p@request等。它很难看,但可以工作您可以根据建议向测试用例添加puts语句,或者添加对Rails.logger.debug()的调用查看应用程序代码并查看日志/developmen

在Rails应用程序中,我有一个失败的Test::Unit功能测试,但控制台上的输出并没有告诉我多少

如何查看请求、响应、闪存、会话、变量集等

有没有像

rake test specific_test_file --verbose

在失败的测试中使用
p@request
等。它很难看,但可以工作在失败的测试中使用
p@request
等。它很难看,但可以工作您可以根据建议向测试用例添加puts语句,或者添加对Rails.logger.debug()的调用查看应用程序代码并查看日志/development.log以跟踪发生的情况。

您可以根据建议将puts语句添加到测试用例中,或者添加对Rails.logger.debug()的调用查看应用程序代码并查看日志/development.log以跟踪发生的情况。

在测试中,您可以访问大量资源,您可以使用这些资源调试测试

 p @request
 p @response
 p @controller
 p flash
 p cookie
 p session
另外,请记住,您的操作应该尽可能简单,所有特定的操作执行都应该通过单单元测试进行测试。 功能测试应保留给整个操作执行

这在实践中意味着什么?如果您的操作中出现了一些问题,并且您的操作调用了3个模型方法,那么您应该能够通过查看单元测试轻松地隔离问题。如果一个(或多个)单元测试失败,那么您知道哪种方法是错误的。
如果所有的单元测试都通过了,那么问题在于操作本身,但是调试应该很容易,因为您已经分别测试了这些方法。

在测试中,您可以访问大量资源来调试测试

 p @request
 p @response
 p @controller
 p flash
 p cookie
 p session
另外,请记住,您的操作应该尽可能简单,所有特定的操作执行都应该通过单单元测试进行测试。 功能测试应保留给整个操作执行

这在实践中意味着什么?如果您的操作中出现了一些问题,并且您的操作调用了3个模型方法,那么您应该能够通过查看单元测试轻松地隔离问题。如果一个(或多个)单元测试失败,那么您知道哪种方法是错误的。
如果所有的单元测试都通过了,那么问题就出在操作本身,但是调试应该很容易,因为您已经分别测试了这些方法。

对一个单独问题的回答


对另一个问题的回答

巧妙的方法是使用宝石。确保将它们包括在测试gem组中。我也在开发组中使用它们。pry和pry nav的优点在于,您可以使用控制台逐步查看代码,这样您不仅可以在执行代码时看到代码,还可以在测试期间输入控制台命令

只需在代码中要触发控制台的位置输入binding.pry。然后使用“step”命令,您可以在代码执行时逐行移动代码。

最巧妙的方法是使用和gems。确保将它们包括在测试gem组中。我也在开发组中使用它们。pry和pry nav的优点在于,您可以使用控制台逐步查看代码,这样您不仅可以在执行代码时看到代码,还可以在测试期间输入控制台命令

只需在代码中要触发控制台的位置输入binding.pry。然后使用“step”命令,可以在执行代码时逐行移动代码