RSpec documentationの「Shared Example Groups」に説明がありますが、「shared_examples_for」を使用して同じexampleを複数のテストで共有することが可能です。 「shared_examples_for <共有exampleグループ名>」で共有するexampleのグループ(「Shared Example Groups」と呼ばれるらしい。)を作成し、 共有したいテスト内で「it_should_behave_like <共有exampleグループ名>」としてexampleを取り込めばOK モジュールをincludeする感じですな。 exampleだけでなく、beforeやafterも共有できます。 # shared_examples_for で 共通のexampleを定義。 shared_examples_for "shared" do
Mac で Apple Hardware Test を使う方法 Apple Hardware Test (AHT) には、Mac のハードウェアをテストする診断機能が一式揃っています。 Mac で問題を切り分け、ハードウェアに問題があると考えられる場合は、Apple Hardware Test を使って、問題の原因として疑われるハードウェアコンポーネントの特定に役立てることができます。 2013 年 6 月以降に発売された Mac については、代わりに Apple Diagnostics をお使いください。詳しくは、こちらの記事を参照してください。 Apple Hardware Test の使い方 キーボード、マウス、ディスプレイ、Ethernet 接続 (ご利用の場合)、AC 電源への接続を残し、それ以外の外付けのデバイスをすべて取り外します。ほかのデバイスの接続をすべて外しておかないと
こちらを見て触発されて書く。プラグイン用にARのクラスを定義する場合の話です。 http://blog.s21g.com/articles/418 アプローチが違うのはそもそも解決したい問題が違うからなので、ケースごとに両方使うといいと思います。私の場合はまるっとARクラスを定義したくなった、かつ元のRails環境は使いたくなかった(プラグインだしね)というのが理由です。 ここでのポイントはSQLite3の:memory:データベースを使っていることです。これを使うと一時ファイルも出なくてすっきり。これをvendor/plugins/my_plugin/spec/spec_helper.rbに置いて、それぞれのspecから読み込んでいます。 require 'rubygems' # これはいらないかも。なんで書いてあるんだっけ? RAILS_ROOT = File.expand_path(
UnitTest で部品をしっかり守っているのに運用時にエラー さらに version up 時には頑張って書いた UnitTest が無駄になる UnitTest の存在意義に疑問が出てくるから、書こうとする気力が落ちる 思考停止して頑張ってまた書いても、また運用時にエラーが起きちゃう こうして悪いリズムが生まれていく 長期的な回帰テストとしては UnitTest は無力 まず書くべきは End to End のテストだった・・・ 河田・・・受入テストにつけ! なるほど、UnitTest よりも受入テストの方が対象となるシステムの挙動と密接であるため、確かに テストコードが長生きする とことがわかる。うん、それで問題が解決しているよ。でも、さらに「実行者が人でないといけない」と言ってるのはなぜ?ここからが問題の核心だが、その答えから言えば 人である方がテストコードがさらに長生きする から
{ French célérité > Latin celeritas > Latin celer, fast, swift. Rapidity of motion; quickness; swiftness. } Download → What is Celerity? Celerity is a JRuby wrapper around HtmlUnit – a headless Java browser with JavaScript support. It provides a simple API for programmatic navigation through web applications. Celerity aims at being API compatible with Watir. Features Fast - No time-consuming GUI
というわけで、前回の続きです。 Rails, cucumberでしあわせになりたい やっていた時点での最新 rspec 1.2.6 rspec-rails 1.2.6 webrat 0.4.4 cucumber 0.3.9 すでにこの時点で、 Featureがフィーチャ、Senarioがシナリオ、Givenが前提、、などと書く事ができました。 さらに、features/step_definitions/webrat_steps.rbを日本語対応してfeatures/manage_posts.feature自体も日本語で書きたいので、下記をインストールして実行しました。 % sudo gem install moro-miso % ./script/generate miso create features/step_definitions/webrat_ja_steps.rb create
moroさんに背中を押され、Cucumber をお仕事で作っているソフトで試してみました。 インストールと初期設定 既にRSpecは入っている場合 % sudo gem install cucumber webrat % cd Railsプロジェクト % script/generate cucumberここで、Cucumberを動かす為の設定等が出来ます。Cucumber自体は日本語などの自然言語でテストシナリを書けるフレームワーク的なもので、実際のテスト機能は含まれていません。ここでは実際のテストはWebratというWebアプリの受入テスト用ソフトでおこないます。 features/step_definitions/webrat_steps.rb に記述されているのが、自然言語と実際のテストを繋ぐ Step definitionsです。 ただし、英語用なので id:moro さんが作られ
クラスをあまり使っておらず、関数を中心に構築されているレガシーなPHPコードをテストするにはどうするか。 テストしたい対象がユーザ定義関数であれば、実際の関数定義を含んだファイルとは別にテスト用の挙動をするモック関数の定義を含んだファイルを用意しておき、ユニットテスト時には後者をrequireするという手法があるが、例えばmysql_connect()のような組み込みの関数の場合はそうもいかない。 Test your Legacy PHP Application with Function Mocks!では、PECLのrunkitモジュールを使うことで実行時に関数を再定義してしまう方法が紹介されている。 テスト対象となるすべての関数をいちいち置き換えていくのは大変だし、組み込みの関数を書き換えてしまう場合の副作用も気になるので常に使えるというわけではないけれど、憶えておくと役に立つ時がある
This repository is private. All pages are served over SSL and all pushing and pulling is done over SSH. No one may fork, clone, or view it unless they are added as a member. Every repository with this icon () is private. This repository is public. Anyone may fork, clone, or view it. Every repository with this icon () is public. Run the following if you haven't already: gem sources -a http://gems.g
Cucumberを使って、Railsアプリのテストを高い抽象度で書き進めていくために欠かせないのがWebratというライブラリです。前回のCucumber全体像の紹介に引き続き、こちらWebratを紹介します。今回も長いです。 2008-01-27修正 id:amacouさんから指摘を受けまして(と、たぶんsatokoさんも以前おっしゃってた)webrat_steps.rbの生成先パスを修正。 語: ${RAILS_ROOT}/step_definitions 正: ${RAILS_ROOT}/features/step_definitions ありがとうございます。 今回のまとめ Webratすごい 画面遷移を「リンクをクリックする」「ボタンをクリックする」と書ける リンクのアンカーテキストではまだ日本語が使えず。さきほどパッチ送ったので早晩書けるようになるはず。 フォームの入力項目もラ
このページは ユニットテスタ使用 の例 1クリックでテストする グループテスト テストを楽にし、より強固な動作をさせるための モックオブジェクトの使用 ブラウザレベルでの ウェブページのテスト News: 初めての安定版のリリース作業が終了しました。22ヶ月しかかかりませんでした。 SimpleTest v1.0 は Sourceforge でリリースされています。 SimpleTest. これから記述することは次のことを仮定します。 あなたが、PHP ウェブ開発言語に精通しているのと同様にユニットテストの概念に ついても精通しているということ。 SimpleTest についての短気な新規ユーザ用のガイドがあります。 より完全なドキュメントについては、特にあなたがユニットテストについて 初心者であるなら、現在進行中のドキュメント を見てください。 テストケースのサンプルについては、 ユニッ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く