技術・科学

Railsその後

投稿日:

本にしたがってひとつずつイテレーションをこなして、今日はテストの章に入った。
実際にテストを書いてみた感想は、なるほど、こうやって書けるもんなんだなあということだった。テストのきっちりした規約と支援ツールのおかげで簡単なテストはとても書きやすい。わりと宣言的なテストをコードとして書くのでレビューもやりやすそうだ。
一般的なテストといえばテスト仕様みたいなものを文書として書いて、人がそれをひとつずつ確認していくような手順を踏むことが多いのだが、それだとどうしてもテスト実施者のスキルの問題とか、主観が入ってしまって実施段階で必ずしも想定していたテストにならないこともあるし、目視と結果の手記入ではやはり信頼性に問題がある。だから自動テストが望ましいのだが、テストの標準的なコード化手法というのはあまり提供されておらず、なかなか自動化が難しかった。
Railsではテスト手法がある程度確立されている。宣言的な書き方で無理なところはRubyのコードでテストデータを自動生成したり、複雑な検証ロジックを書いたりすることができる。
まだモデルのテストの部分しか学んでいないが、Railsだとテストの自動化というのはこういうやり方でできるんだなあと比較的簡単に実感できるのだ。
まだまだ進化は続くのだろうけど、このフレームワークはオールインワンという意味でかなり野心的だと思う。それがRailsの魅力なのだ。
ただ、この本ではテストの章を書いた人がそれまでのプログラム作成のイテレーションを書いた人と別の人のようで、丁寧さという点でそれまでのページより劣る部分がある。それから、これはまあ仕方がないんだけど、本の執筆時点からRails自体のバージョンがあがってしまっていて、実際の動作と本の中身に矛盾点があったりする。
今日読んだテストのコードの中には、明らかになんのためのテストか筆者が勘違いしてしまったと思われる記述にも出会った。自動テストの記述というのは本体のコードがやろうとしていることとテストしようとしていることの区別がしにくい点が難しい点だということだろう。実際、いろいろな支援手段が用意されていても、テストをきちんと書くのはかなり難しいなとも感じた。
それでも手軽に先端の技術を試すことができるRailsはやはり評価されていいものだと思う。オブジェクト指向とMVCと自動テストを学びたいと考えている方は是非一度試されることをおすすめする。
RailsによるアジャイルWebアプリケーション開発
前田 修吾

RailsによるアジャイルWebアプリケーション開発

by G-Tools

Follow me!







書いた人

nyao

nyao

本を書きたい人にITの基礎から学んでもらって、Kindleで著者デビューするまでをサポートします。 ITってよくわからないという人のために勉強会をやっています。 「読書と編集」という屋号でお仕事をしています。

プロフィールを表示 →

-技術・科学

Copyright© NyaoPress 読書と日常 , 2020 All Rights Reserved.