ようこそゲストさん

CPA-LABテクニカル

メッセージ欄

2008年8月の日記

一覧で表示する

2008/08/18(月) テストの限界

Qdmailの開発でえらいポカをした。
単純なテストを忘れたために、一番基本的な使い方でエラーがでるバグ。
複雑な指定ができるインターフェイスを設計した場合、一番複雑なパターンでテストはするのだけれど、今回は、最も単純なパターンでのテストを忘れていた。
今回のバグは、qd_send_mailの第1引数が配列でなく、単純なstringタイプの時にエラーが出ていた。
機械的にすべてのパターンを試すようなテストのためのプログラムを組めばいいのだろうけど。。。。。
今後の開発ツールとしては必要なのだろうけれど、おそらく大幅な改編はしないであろうQdmailにそこまでの労力を注ぎ込むかどうか。。。。
ぼちぼち本業サイトの繁忙期でもあるし、どうしましょう。

2008/08/14(木) メールのデータサイズを知る

高機能メールコンポーネントQdmailの1.0.3bから、メールのデータサイズ(バイト数)を取得できるようにしました。
http://hal456.net/qdmail/size

デコメなどでは、容量制限を守らなくてはいけない場合があり、メール送信前に、制限値を超えているかどうかを確認する必要もあるのかな、と思って実装してみました。

2008/08/13(水) エラーの隠蔽

高機能メールコンポーネントQdmailでは、発するエラーを画面に表示しないこともできます。

Qdmailのエラー処理

そうしないと、残念ながらこうなってしまいます。

http://www.namikawa.co.jp/dataupload/registration_send.php
(エラーの画面なので、いつなくなるかわかりません。)
Qdmail error: Must Header is not exist 'TO' line -> 1537
Qdmail error: No Receipt line -> 2159
Qdmail error: No send . Because PHP mail function replied error line -> 1500
Qdmail error: Send Error line -> 1436
Qdmail error: No send . Because PHP mail function replied error line -> 1500
Qdmail error: Send Error line -> 1436
このエラーの例をみて、ああ、エラー出力にも、Qdmailのバージョンを表示させたほうがいいな、と思い、あるバージョンからは、エラー時にバージョンも表示するようにしています。

でも、運用時には必ず、
$mail -> errorDisplay( false );
としたほうがいいですね。
これで画面にエラー出力をすることはありません。他でエラーを検知する必要はありますが。
というか、これをデフォルトにしたほうがいいのだろうか。。。。