give IT a try

プログラミング、リモートワーク、田舎暮らし、音楽、etc.

最近 @jnchito が書いたQiita記事とか(2017年1月11日版)

はじめに

タイトルのとおり、僕が最近書いたQiita記事の紹介です。
そんなに大作記事は書いておりませんが、ちょこちょこと新しい記事を書いたり、昔の記事をアップデートしたりしているので、その記事へのリンクと簡単な説明を載せていきます。

RSpecのbeマッチャに関する説明を追加

昔書いた「使えるRSpec入門・その2 使用頻度の高いマッチャを使いこなす」という記事にbeマッチャの説明を追記しました。

beマッチャの説明に直接飛びたい方はこちらのリンクからどうぞ。

http://qiita.com/jnchito/items/2e79a1abe7cd8214caa5#be

実はつい最近まで "expect(A).to be B" という記述がインスタンスの同一性をチェックしているとは知りませんでした。。

SQLインジェクションに関する記事

他の人が書いたQiita記事でSQLインジェクションが発生しかねないコードが載っていたので、その記事にコメントを入れると同時に「どうやったらSQLインジェクションを防げるか?」という記事を書きました。


お問い合わせフォームへのスパム投稿を防ぐ方法

妻のパン屋のWebサイトで、お問い合わせフォームへのスパム投稿がよく発生するのでその対策方法を説明しました。
まあ、実際にはひらがな入力を必須にするという、実にシンプルな解決策なんですが。


Minitestで例外クラスとエラーメッセージを検証する方法

RSpecのraise_errorマッチャの感覚でMinitestのassert_raisesメソッドを使うと、期待したとおりのテストを書いたことにならないので、正しい方法を説明しました。
(僕も記事を書きながら仕様を理解したんですが)


フィーチャースペックで楽にユーザー切替を実現するTips

Railsのフィーチャースペックで複数のユーザーを何度も切り替えるテストを書くときは、愚直にコードを書くとかなり冗長になってしまいます。
そこでこの記事では最近僕がよく使っているユーザー切り替え用のヘルパーメソッドを紹介しています。


RubyMine 2016.3で導入されたローカルプロセスに対するデバッグ手順

RubyMine 2016.3からローカルで動いているRubyプロセスにアタッチしてデバッグ実行できる機能が追加されました。
これにより、PowやPuma-devで動いているRailsアプリに対してもRubyMineからアタッチしてデバッグ実行することができます。
この機能が結構便利なので、その手順を紹介しています。


おまけ:正規表現の入門記事もオススメ

その昔書いた「初心者歓迎!手と目で覚える正規表現入門・その1 さまざまな形式の電話番号を検索しよう」という記事が1300いいね!を超えました。
最近またいいね!やストックが増えてきているので、まだ読んでいない人がいたらぜひ読んでみてください。


まとめ

とりあえず今回は以上です。また記事が溜まったら報告します。

コードがたくさん出てくるような技術系の記事はQiitaに書くことが多いので、プログラミングに興味がある方は僕のQiitaアカウントをフォローしてやってください~。