mail2weblog (1.3.9) | 2013-08-09 13:18 |
この書き方に従うことで、実際に稼働している環境でのテスト実行を可能にします。
# coding: UTF-8 if $0 == __FILE__ then ROOT_PATH = File.dirname(File.expand_path(__FILE__)) $:.unshift(ROOT_PATH + "/../../../") $:.unshift(ROOT_PATH + "/../../../../main/") $:.unshift(ROOT_PATH + "/../../../../main/lib/") # mail2weblog のルートパスを設定する M2W_ROOT_PATH = ROOT_PATH + "/../../../../main/" require 'm2w_configurator' require 'minitest/autorun' end # <<必要な require 文>> # 事例 require 'abc_def_ghi' require File.expand_path("#{File.dirname(File.expand_path(__FILE__))}/../../conf/setting") # <<テストに対するコメント>> # # 最初の著者:: <<最初の著者>> # リポジトリ情報:: $Id$ # 著作権:: Copyright (C) Ownway.info, 2011-2012. All rights reserved. # ライセンス:: CPL(Common Public Licence) class TestXxxYyyZzz < MiniTest::Unit::TestCase # <<テストメソッド>> def test_abc_def_ghi # <<テスト処理>> end end
テストソースの配置によって、以下の文は適宜パスを合わせて記述してください。
該当文 | パス | 備考 |
1つ目の $:.unshift 文 | test | テストユーティリティー関連(test/testutils にあるクラス群)を require しやすくするため |
2つ目の $:.unshift 文 | main | プラグインを読み込めるようにするため。 |
3つ目の $:.unshift 文 | main/lib | ライブラリを読み込めるようにするため。 |
M2W_ROOT_PATH 文 | main | m2w_configurator が main/conf を適切に読み込めるようにするため。 |
conf/setting の require 文 | test/m2w/conf | 全体的なテストの設定を読み込むため。 |
runtest コマンドプラグインで、メールにより稼働環境でテスト実行指示を出します。
その際、以下を実現するため、このような複雑な書き方をします。
# coding: UTF-8 if $0 == __FILE__ then begin require 'rubygems' rescue LoadError end ROOT_PATH = File.dirname(File.expand_path(__FILE__)) $:.unshift(ROOT_PATH + "/../") $:.unshift(ROOT_PATH + "/../../main/") $:.unshift(ROOT_PATH + "/../../main/lib/") require 'minitest/autorun' end # <<必要な各種 require 文>> # 事例 require 'abc_def_ghi' # 設定ファイルを読み込む場合の事例 require File.expand_path("#{File.dirname(File.expand_path(__FILE__))}/conf/setting") # <<テストに対するコメント>> # # 最初の著者:: <<最初の著者>> # リポジトリ情報:: $Id$ # 著作権:: Copyright (C) Ownway.info, 2011-2012. All rights reserved. # ライセンス:: CPL(Common Public Licence) class TestXxxYyyZzz < MiniTest::Unit::TestCase # <<テストメソッド>> def test_abc_def_ghi # <<テスト処理>> end end
サポートブログに対して自動投稿を行う総合テストを実施しています。
時間は以下の通りです。
テスト結果を見るには、以下のリンクを参考にして下さい。
ただし。実装の変更に伴い適宜自動テストを実施している場合もあります。
本テスト結果の表示には、以下の継続的インテグレーションベースを利用しています。
上記プロジェクトは、本プロジェクトから派生したものです。