rubocopに必須のセットアップは、特にないです。ただ、 .rubocop.yml は必須です。もし、迷うなら、 railsの .rubocop.yml をコピペ or 参考に作るといいです。 なお、自分のは以下の通りです。 AllCops: Exclude: - "tmp/**/*" - "config/initializers/*" - "vendor/**/*" - "db/schema.rb" - "node_modules/**/*" - "db/migrate/*.rb" - "bin/*" DisplayCopNames: true TargetRubyVersion: 2.6.0 Rails: Enabled: true Style/AndOr: EnforcedStyle: conditionals Style/AsciiComments: Enabled: false
Rspec 3.5についての記載となります。 documentにallow-any-instance-of/expect-any-instance-ofは使わない方がよいと書かれています。 This feature is sometimes useful when working with legacy code, though in general we discourage its use for a number of reasons: The rspec-mocks API is designed for individual object instances, but this feature operates on entire classes of objects. As a result there are some semantically confusing edge
はじめに やりたいこと:カッコよくグリーンを出したい! 「テストは大事!」とは言うものの、どんなRSpecを書いたらいいのかわからない...。 そんな状況が、Railsのお仕事に本格的に関わるようになってから、続いておりました。 そもそも自動テストには憧れがありますし、specを実行して、ターミナルに緑の文字を出したいのはやまやまです。でも、何を書けばいいのかわからない。 そんな時の、とりあえずの取りかかりの例を載せてみます。 ※ この記事の例について: 下記の例は、実際はテストとして無理に書く必要はないものだったりします。 自明なものを書きすぎると、たとえば全てのテストを通すのにも非常に時間がかかってしまいますので、このあたりは、rspecを動かす場合の確認用、1例として見ていただけると幸いです。 ※ これからRspecを始めたい方 / 初心者の方へ (20180523 追記) @jnc
こんにちは、エンジニアの神山です。 最近、テストカバレッジを上げるためRSpecを書きまくっています。ちなみに最初は90%でしたが、苦闘の末95%まで上がりました。結構骨が折れましたね。 その中でも大変だったのがFacebookログイン部分のテストです。外部APIを使っており、そこの部分のテストの書き方が分からなくて悩んでいました。 色々と調べてみるとモックを使うとうまいことテスト出来るよという文献を見つけました。 ということで今回は、外部API部分のテストの問題点、モックとは何か、またそれをどのようにテストに使うのかにフォーカスして記事を書きました。 外部API部分のテストの問題点 今回悩んだのは外部APIを使用している部分のテストをどのように書くかということです。 例えば、「ログインしようとしているユーザーのFacebookのアカウント情報を取得し、すでにDBに登録されていればログイン
rspec2.99でinclude_examplesを使用しています。 spechoge.rb describe 'hoge_type' do before do end include_examples 'toarutesuto' end spec/support/lib/kyouyuu.rb require 'spec_helper' describe "テストを共有" do before do end shared_examples 'toarutesuto' do before do end it'' do end テストを実行すると、以下ワーニングが出ます。 Deprecation Warnings: -------------------------------------------------------------------------------- Accessing
最近script/consoleをすると下記のような警告がでるようになっていました。 irb: warn: can't alias context from irb_context.起動時に警告が出る以外は特に支障はないのでしばらく放置していたのですが、今日やる気が出たので原因を調査してみました。するとenvironment.rbで config.gem "rspec-rails", :lib => "spec" などとしていたのが原因だとわかりました。上記コードをenvironment/test.rbに移したら警告が出なくなりました。 参考 "irb: warn: can't alias context from irb_context." when console loads - Ruby on Rails: Core | Google Groups
概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: Ruby on Rails / RSpec - test execution count to make your code better 原文公開日: 2018/02/24 著者: Paweł Dąbrowsk 参考: RSpec 3.12ドキュメント Class: RSpec::Mocks::MessageExpectation 2018/04/02: 初版公開 2023/09/21: 更新 RSpecでは、指定のメソッドが呼び出される回数をexpectで指定できます。その方法を説明する前に、呼び出し回数を知ることの重要性についてお話します。これはコードの振る舞いを制御するためのものです。説明のため、わざと誤ったコードを書いてみます。 class SomeClass def something @something = ser
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く