最近私は、私たちの製品のEmail2SMS機能の作業に着手しました。プロジェクトに参加したとき、このコンポーネントは単体テストによるコードカバレッジがゼロでした。レガシーコード。コマンドライン統合テストのためのPHPUnit
私が作業を開始して以来、私はテストファーストアプローチを使用していました。しかし、コードの品質は非常に低かった。それを分割して単体テストで小さなチャンクをテストするのは非常に難しいので、統合テストを書くことにしました。
いくつかのメッセージ情報を受け入れ、DB内のユーザーを検索し、すべてがOKならば情報を保存するphpスクリプトがあります。
$last_line = system('php emailtosms.php -file=unicode_message.txt ', $retval);
$this->assertStringExistsInLogFile('Email to SMS message was not sent');
悪いですか?どのようにこの問題を解決しますか?