小编Dav*_*uth的帖子

评论"frozen_string_literal:true"有什么作用?

这是rspec我项目目录中的binstub.

#!/usr/bin/env ruby
begin
  load File.expand_path("../spring", __FILE__)
rescue LoadError
end
# frozen_string_literal: true
#
# This file was generated by Bundler.
#
# The application 'rspec' is installed as part of a gem, and
# this file is here to facilitate running it.
#

require "pathname"
ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
  Pathname.new(__FILE__).realpath)

require "rubygems"
require "bundler/setup"

load Gem.bin_path("rspec-core", "rspec")
Run Code Online (Sandbox Code Playgroud)

这是打算做什么的?

# frozen_string_literal: true
Run Code Online (Sandbox Code Playgroud)

ruby string immutability ruby-2.3

188
推荐指数
3
解决办法
5万
查看次数

工厂和战略模式有什么区别?

任何人都可以解释工厂和战略模式之间的区别吗?

对我来说,除了额外的工厂类(在工厂模式中创建产品对象)之外,两者看起来都相同

java design-patterns strategy-pattern factory-pattern abstract-factory

132
推荐指数
7
解决办法
5万
查看次数

RSpec和Cucumber有什么区别?

我有6个月的Rails开发经验.我已经构建了一个现在正在使用的Web应用程序,它具有身份验证和授权以及postgresql db.

我正在继续我的第二个Rails应用程序,但这一次,经过经验教训,我想用TDD开发它,因为我注意到它更容易扩展它并修复bug.它发展缓慢,但从长远来看,它更容易处理.

我听说过Rspec和Cucumber,但他们完全被他们搞糊涂了.

我想知道RSpec和Cucumber之间的区别以及它们的用途.

从初学者(也是唯一的开发者)的角度来看,是否确实需要测试框架也是有用的.

testing tdd rspec ruby-on-rails cucumber

112
推荐指数
1
解决办法
3万
查看次数

金丝雀释放策略与蓝/绿

金丝雀版本的理解是,它是对部分生产节点的部分发布,其中粘性会话已打开.这样,如果您最终发布了错误的错误,您可以控制并最大限度地减少受影响的用户/客户数量.

蓝色/绿色版本的理解是你有2个镜像生产环境("蓝色"和"绿色"),你将更改推送到蓝色或绿色的所有节点,然后使用网络魔术来控制用户通过DNS路由到哪些环境.

所以,在我开始之前,如果我到目前为止所说的任何内容都不正确,请先纠正我!

假设我或多或少走上正轨,那么关于这两个策略的几个问题:

  • 是否存在金丝雀优于蓝/绿的情况,反之亦然?
  • 是否存在部署模型可以同时实施这两种策略的情况?

deployment production-environment release-management blue-green-deployment canary-deployment

106
推荐指数
6
解决办法
4万
查看次数

它应该是"Arrange-Assert-Act-Assert"吗?

关于Arrange-Act-Assert的经典测试模式,我经常发现自己在Act之前添加了一个反主张.这样我知道传递的断言实际上是作为动作的结果传递的.

我认为它是类似于红-绿-重构红色,只有当我看到红条在我的测试过程中我知道,绿坝是指我写的代码有差别.如果我写一个通过测试,那么任何代码都会满足它; 同样,对于安排,断言法断言,如果我的第一个断言失败,我知道,任何法案会通过最后断言-因此,它实际上并没有证实有关都难.

你的测试是否遵循这种模式?为什么或者为什么不?

更新澄清:最初的断言基本上与最终断言相反.这不是安排工作的主张; 这是法案尚未奏效的断言.

language-agnostic unit-testing arrange-act-assert

92
推荐指数
5
解决办法
2万
查看次数

路径助手使用点而不是斜线生成路径

在我的routes.rb中我有以下内容:

resources :message_threads
Run Code Online (Sandbox Code Playgroud)

我打电话的时候:

message_threads_path(1)
Run Code Online (Sandbox Code Playgroud)

我明白了:

/message_threads.1
Run Code Online (Sandbox Code Playgroud)

为什么是这样?我的其他资源运作正常.我没有正确地复数这个或什么?

ruby-on-rails ruby-on-rails-3

86
推荐指数
2
解决办法
2万
查看次数

capybara断言元素的属性

我正在使用RSpec2和Capybara进行验收测试.

我想断言链接在Capybara中是否被禁用.我怎样才能做到这一点?

rspec ruby-on-rails capybara

85
推荐指数
2
解决办法
7万
查看次数

spec/rails_helper.rb与spec/spec_helper.rb的不同之处是什么?我需要它吗?

我是第二次做Rails教程.当我进入这个

rails generate integration_test static_pages
Run Code Online (Sandbox Code Playgroud)

我得到的spec/rails_helper.rbspec/spec_helper.rb,而不是仅仅spec/spec_helper.rb

现在,当我运行我的测试时,它们比我上次这样做时更长(更"冗长")并且更慢.我想知道两个文件之间有什么区别,如果我做错了什么.另外,有没有办法摆脱rails_helper.rb文件而不搞乱一切?

testing rspec ruby-on-rails rspec-rails rspec3

83
推荐指数
1
解决办法
2万
查看次数

适配器 - 适配器模式的任何真实示例

我想向我的团队展示Adapter Pattern的使用.我在网上看了很多书和文章.每个人都引用了一个有助于理解概念(形状,记忆卡,电子适配器等)的例子,但没有真正的案例研究.

你能否分享一下适配器模式的案例研究?

ps我尝试在stackoverflow上搜索现有问题,但未找到答案,因此将其作为新问题发布.如果您知道已有答案,请重定向.

oop design-patterns software-design adapter

77
推荐指数
7
解决办法
5万
查看次数

node.js的BDD和TDD?

什么用于node.js的BDD和TDD?

我习惯使用Cucumber + RSpec.node.js有什么好的组合?

谢谢

tdd bdd rspec cucumber node.js

69
推荐指数
4
解决办法
2万
查看次数