タグ

testに関するkamipoのブックマーク (150)

  • Test::Base でこういうのどう書けば良いのだろう - @kyanny's blog

    追記 http://d.hatena.ne.jp/a666666/20090406/1238986138#c1238990265 でご指摘いただいたように、 yaml フィルターを使って - ~ で undef を表現してやれば良いそうです。 #!/usr/bin/perl use strict; use warnings; use Test::Base; plan tests => 1 * blocks; sub match { my $input = shift; my $re = qr/^(\w+)\s(\w+)\s(\w+)\s?(\w+)?$/; my @matched = $input =~ $re; return \@matched; } filters { expected => [qw(lines chomp array)], }; run_is_deeply input

    Test::Base でこういうのどう書けば良いのだろう - @kyanny's blog
    kamipo
    kamipo 2009/04/27
    yaml フィルターを使って - ~ で undef を表現してやれば良いそうです。
  • Extending Test::Base - Ktat's Wiki

    Test::Baseで自分好みのTestクラスを作る 著者:加藤 敦 最終更新時間:2009年04月14日 19時17分33秒 自己紹介id:ktat Wano株式会社 テストおさらいどうしてテストが必要か? リファクタリングしやすい メソッドの仕様が明確になる 信頼性をチェックすることが出来る(Deve::Coverとか) Test::More#!/usr/bin/perl use Test::More tests => 5; BEGIN{use_ok("CGI");} is(ref(my $q = CGI->new), 'CGI', 'create CGI object'); is($q->param('hoge', 'hoge'), 'hoge', 'store hoge and return hoge'); $q->param('array', 1 .. 5); is_deeply

  • ダミーデータを自動生成したい!プロジェクト - taiyoh独言

    先日のエントリから更に掘り下げて、ダミーデータをある程度自動的に生成できれば、手間がもっと減るのではないかと考えた。 結果→GitHub - taiyoh/test-dummygenerator: for people who are lazy not to want to create many many test data... ハッシュリファレンスベースで、ある程度値の方向性がついている感じです。 #!/usr/bin/env perl use strict; use warnings; use Test::DummyGenerator; use YAML qw/Dump/; my $dummy = Test::DummyGenerator->new( schema => YAML::Load(do { local $/; <DATA> }) ); my $data = $dummy

    ダミーデータを自動生成したい!プロジェクト - taiyoh独言
  • Extending Test::Base - Ktat's Wiki

    Test::Baseで自分好みのTestクラスを作る 著者:加藤 敦 最終更新時間:2009年04月14日 19時17分33秒 自己紹介id:ktat Wano株式会社 テストおさらいどうしてテストが必要か? リファクタリングしやすい メソッドの仕様が明確になる 信頼性をチェックすることが出来る(Deve::Coverとか) Test::More#!/usr/bin/perl use Test::More tests => 5; BEGIN{use_ok("CGI");} is(ref(my $q = CGI->new), 'CGI', 'create CGI object'); is($q->param('hoge', 'hoge'), 'hoge', 'store hoge and return hoge'); $q->param('array', 1 .. 5); is_deeply

  • Test-Valgrind-1.19

    Fix : valgrind 3.1x will no longer be treated as valgrind 3.1.0, causing the wrong command line arguments to be used. Thanks Lucas Nussbaum and Gregor Herrmann from Debian for reporting and providing feedback (Debian bug 832833). Fix : The number of callers is now capped at 24, as this is the maximum number supported by valgrind. An higher number of frames could lead to the generation of unusable

    Test-Valgrind-1.19
  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

  • ヽ( ・∀・)ノくまくまー(2009-04-08)

    やはりテストの話題になって stubとmockの違いを1行で! 今のテストフレームワークのお薦めは? RRが熱いよ!(英語ぽく書くのが目的じゃない、rubyぽいdslが必要なんだ!) mock で should_receive でガチガチにサブオブジェクトに介入してくる人って何なの! duck type の考え方からしても、何をやるかは相手に任せるベッキー mock は探針であるべきだ stub しか使わないよね ごめん、俺、最近は実データ派に戻ってきたんだ(Fixtureラブ) Fixture はシナリオ別に使い分けるのが面倒じゃない? そこで FactoryGirl ですよ 何が嬉しいの? テストデータを ruby コードで動的に書きたいときがある それって、もし fixture を簡単に切り替えられる機能があれば不要じゃね? 動的なら YAML でゴリゴリ書く方法もあるし 切り替え、

  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

  • 分散システムのテストの自動化 - sdyuki-devel

    複数のプロセスが相互に連携して動くシステムのテストを自動化したい。ありがちに書くとプロセスを起動すると終了するまで待ってしまうので、同時に複数のプロセスを起動できなくて困る。バックグラウンドで起動させておいて後で終了させたとき、 ps aux | grepしてPIDを調べて、しばらくポーリングして当に終了するまで待つ、とか面倒すぎる。 あと起動してからしばらくは初期化処理をやっているので、標準出力に「started」と表示されるまで待ちたかったりする。 問題はプロセスをバックグラウンドで起動させると、そのプロセスの扱いが面倒すぎるところ。そこを上手く扱えれば、シグナルを飛ばしたり、標準出力に「started」と表示されるまで待ったりするのは造作もないハズ。 そこでプロセスをオブジェクトとして扱えるようにすればいいという案。 mgr = Process.new("cmdline") srv

    分散システムのテストの自動化 - sdyuki-devel
    kamipo
    kamipo 2009/04/04
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • prove (Test::Harness) コマンドの --state オプション - daily dayflower

    テストが膨大になっていくと,あるテストでは時間がかかったりして「そのテストはもう成功することがわかっとるっちゅうねん;失敗するテストだけ再テストしたいっちゅうねん」ってことになったりします。そんなときに使えるのが prove コマンドの --state オプションです。 --state オプションに failed という引数をわたすと,「テストの対象は前回 fail したテストスクリプトのみ対象」という意味になります。ステートを保存する save と併用して指定してみます。 % prove --state failed,save No saved state, selection will be empty Files=0, Tests=0, 0 wallclock secs ( 0.00 usr + 0.00 sys = 0.00 CPU) Result: NOTESTS「No save

    prove (Test::Harness) コマンドの --state オプション - daily dayflower
    kamipo
    kamipo 2009/04/03
    デバッグが一通りすんだら --state hot,all,save するなり --state つけずに動かすなり,.state ファイルを削除するなりするべきでしょう。
  • ヽ( ・∀・)ノくまくまー(2009-03-30)

    ● [テスト] should change に見る UnitTest と RSpec の違い Yugui さんに Proc#should change が便利だと教わった。 Spec::Matchers::Change Spec::Matchers::Change を使うと、一連のコード(proc)実行時に変化したこと(仕様)を簡単に記述することができる。 should change(receiver, message, &block) should change(receiver, message, &block).by(value) should change(receiver, message, &block).from(old).to(new) should_not change(receiver, message, &block)

  • YappoLogs: クロスブラウザ対応やってみて思った事

    クロスブラウザ対応やってみて思った事 HTMLやらCSSやらJavaScriptやら色々弄った感想 - Firefox, Safari, Google Chrome なんかは割と手がかからない - Opera も上の3つ抑えてればだいたいok - なんかSafari4のJavaScriptの挙動が3と微妙にちがう - IEは死ね、IE7からだいぶ互換性的な物がよくなってるけどIEは死ね。 -- IE6のサポートを切り捨てる時代はまだか? - IE8は確かにJavaScriptが速くなってるがGoogle Chromeは劣るしSafariとか当速い、Firefox3.0は結構遅い - z-indexの事を考えてないで作ってると、いざとなったら当にびっくりする - pngの透過画像をあわせるのは案外しんどい -- DXImageTransform.Microsoft.AlphaImageL

  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

  • DBD::Mock を使ったテスト - 日向夏特殊応援部隊

    DBD::Mock は DBI のドライバの一つで、DBI を使ったプログラムで意図的な状態を作る事が出来ます。 と言う訳でメモ程度に書いて行きます。 データベースハンドルの取得 use strict; use warnings; use Test::More; use DBI; plan tests => 3; my $dbh = DBI->connect('dbi:Mock:', '', '', +{ AutoCommit => 0, RaiseError => 1 }); ok($dbh, 'Create database handle'); isa_ok($dbh, 'DBI:db'); is($dbh->{Driver}->{Name}, 'Mock', 'Driver information'); で、普通に Database Handle が取れます。 SELECT してる箇

    DBD::Mock を使ったテスト - 日向夏特殊応援部隊
  • 分散システムのテストを自動化する - Blog by Sadayuki Furuhashi

    複数のプロセスが相互に連携して動くシステムのテストを自動化したい。 普通に書くとプロセスを起動したあと終了するまで待ってしまうので、複数のプロセスを同時に起動できなくて困ります。&を付けてバックグラウンドで起動させると、後で終了させたとき、まず ps aux | grepしてPIDを調べて、シグナルを飛ばして、しばらくポーリングして当に終了するまで待つ、なんてことになって面倒です。 それから起動してからしばらくは初期化処理が走っているので、標準出力に「started」と表示されるまで待ちたかったりします。 そのあたりをうまく扱うためのライブラリを書いてみました。↓こんな感じで自動化できます。 #!/usr/bin/env ruby require 'chukan' include Chukan srv = spawn("server -arg1 -arg2") # 'server' コマ

    分散システムのテストを自動化する - Blog by Sadayuki Furuhashi
    kamipo
    kamipo 2009/03/19
  • Test::Mock::LWP を試す - 日向夏特殊応援部隊

    久しぶりのエントリです。一応元気にやってますよっと。 ここまでのあらすじ 同僚の id:typomaster さんから、Test::Mock::LWP を使ってテスト書きたいんだけど〜と言われたので早速軽く試してみましたよ。 Test::Mock::LWP とは 具体的には、 LWP::UserAgent HTTP::Request HTTP::Response モジュールに対して Test::MockObject 化した物だと考えて良い。それぞれ、 Test::Mock::LWP::UserAgent Test::Mock::HTTP::Request Test::Mock::HTTP::Response モジュールが対応しています。それぞれソースは短いので実際に見てみましょう。 Test::Mock::HTTP::Request package Test::Mock::HTTP::Re

    Test::Mock::LWP を試す - 日向夏特殊応援部隊
  • RailsでCucumberのカバレッジをとる方法メモ - AorBorF

    RailsでCucumberでテストを行った際のカバレッジをとってみたので、その手順をメモ 参考URL http://wiki.github.com/aslakhellesoy/cucumber/using-rcov-with-cucumber-and-rails rcovのインストール 参考にしたgithubのwikiではrcovではなくてspicycode-rcovを推奨していたのでそれを使う $ sudo gem sources -a http://gems.github.com #すでにgemのソースにgithubを設定している人はこの手順は不要です $ sudo gem uninstall rcov #まだrcovを入れていない場合はこの手順は不要です $ sudo gem install spicycode-rcov cucumber.rakeの修正 {RAILS_ROOT}/

    RailsでCucumberのカバレッジをとる方法メモ - AorBorF
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • Happy Testing Perl 記事一覧 | gihyo.jp

    第4回Test::Perl::Critic, Test::Pod, Test::Pod::Coverage, Test::Exception, Test::Warn, Devel::Coverの紹介 小林篤 2008-06-25

    Happy Testing Perl 記事一覧 | gihyo.jp