【PHP】フレームワー ..
[
2ch
|
▼Menu
]
■コピペモード
□
スレを通常表示
□
オプションモード
□このスレッドのURL
■項目テキスト
7:nobodyさん 08/02/09 19:08:55 どこで聞くべきか迷ったんですけど、ここにします。 今SimpleTestを使ってテストしています。 SimpleTestにはWebTestCaseといってあたかもブラウザで アクセスしたかのように、ウェブページに対してhttpプロトコルで 接続・・・その結果をテストということができるのですが、 このメール版はないでしょうか? つまり、自分のPHPアプリからメール送信・・・そしたら(仮想の)テスト用メールサーバーにメールがたまり、 テストコードから、メールサーバーに来たメールを見てアサーションや、そのメールに書かれているリンクを クリックなどしてテストを続行という、一連の処理にメールが入る場合のテストの自動化をしたいのです。 なにか良いライブラリ、良い手は無いでしょうか? 8:nobodyさん 08/02/09 20:29:30 あー、そういう手作業テストって面倒だよな なんか良い手あるなら俺も知りたい 9:7 08/02/09 20:29:50 SimpleMailを見つけました。 10:7 08/02/09 23:11:53 SimpleMail http://www.curioussymbols.com/simplemail/ ちなみに、Windowsで使うときの注意点です。 SimpleMailがSMTPサーバーとしてFakeMailを使用するので別途インストールする必要があります。 perl版は必要なライブラリが入れづらいようなのでpython版を使いました。 python版はWindows版があるのでインストーラーで簡単に入れられます。 あらかじめpython自体も入れておく必要があります。 http://www.lastcraft.com/fakemail.php ここに情報が少し書いてあります。 fakemailerを起動するときは、インストールしたフォルダで、 > fakemail.py --host=localhost --port=10025 --path=. でいいのですが、そのままではエラーになりました。 エラーメッセージを見ると、「signal.SIGHUP」が定義されていないそうです。 どうせテストだし、あまり重要なものではなさそうなので、削除しました。 > for sig in (signal.SIGINT, signal.SIGTERM, signal.SIGHUP): ↑fakemail.pyの中の「, signal.SIGHUP」を消す。 SimpleMailにはstart()メソッドでfakemailを実行する機能があるのですが、 Linux/Unix用のパスで、perl版のコードの上、fakemail.pyをバックグラウンドで 実行しようとすると、forkなんたらのエラーが発生するのであきらめます。 start()、stop()メソッドを呼ばなくても使えます。 その代わり、テスト開始前にfakemailerを起動しておきましょう。
次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
レスジャンプ
mixiチェック!
Twitterに投稿
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch
4899日前に更新/241 KB
担当:undef