記事"ユニットテストの助けを借りたコードのクオリティー向上"についてのディスカッション 新しいコメント MetaQuotes 2016.04.22 13:38 新しい記事 ユニットテストの助けを借りたコードのクオリティー向上 はパブリッシュされました:シンプルなプログラムにさえ信じられないようなエラーがよくあるものです。「どうしてそんなふうになったんだろう?」というのが、そのようなエラーが明らかになったとき最初に思うことです「どうしたらエラーを出さずにすむのだろう?」というのは、あまり頻繁に心に浮かばない第2の問いです。完璧に欠点のないコードを作成するのは不可能です。特に大規模なプロジェクトでは。ですが、ちょうどよいタイミングでエラーを検出するために技術を利用できるものです。本稿では、一般的なユニットテスト方法の助けを借りてコードのクオリティーを向上する方法を説明します。 ユニットテスト作成についての練習 トレーニングのゴールを設定します。タスクがエントリで配列を2つ受け取る関数を持つライブラリを作成することだとします。この関数は第1の配列から第2の配列にないエレメントを削除します。結果、第1の配列は第2の配列のサブセットとなります。 そこで関数のプロトタイプを決定します。 void CreateSubset(int & a1[], int a2[]); 関数作成に対してテスト駆動方法を試してみます。テストデータセットを決めます。以下を行うため、複数の入力データの等価クラスをマークします。 両方の配列が空である。A1 は空、A2 にはエレメントがある。A1 にはエレメントがあり、A2 は空。両配列が同様のエレメントセットを持ち、同様のサイズである。A1 には A2 にはないエレメントがある。A1 のエレメントの一部は A2 にもあり、A2 の一部は A1 に含まれる(どちらにも交点がある)。A1 エレメントはすべて A2 にあるが、A2 のサイズの方が大きい。A1 エレメントのごく一部が A2 にある。また、エレメントは配列じゅうに散らばっている。A1 エレメントのごく一部が A2 にある。また、エレメントは配列の最初に集中している。A1 エレメントのごく一部が A2 にある。また、エレメントは配列の最後に集中している。作者: Андрей 新しいコメント 理由: キャンセル 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
新しい記事 ユニットテストの助けを借りたコードのクオリティー向上 はパブリッシュされました:
シンプルなプログラムにさえ信じられないようなエラーがよくあるものです。「どうしてそんなふうになったんだろう?」というのが、そのようなエラーが明らかになったとき最初に思うことです「どうしたらエラーを出さずにすむのだろう?」というのは、あまり頻繁に心に浮かばない第2の問いです。完璧に欠点のないコードを作成するのは不可能です。特に大規模なプロジェクトでは。ですが、ちょうどよいタイミングでエラーを検出するために技術を利用できるものです。本稿では、一般的なユニットテスト方法の助けを借りてコードのクオリティーを向上する方法を説明します。
ユニットテスト作成についての練習
トレーニングのゴールを設定します。タスクがエントリで配列を2つ受け取る関数を持つライブラリを作成することだとします。この関数は第1の配列から第2の配列にないエレメントを削除します。結果、第1の配列は第2の配列のサブセットとなります。
そこで関数のプロトタイプを決定します。
関数作成に対してテスト駆動方法を試してみます。テストデータセットを決めます。以下を行うため、複数の入力データの等価クラスをマークします。
作者: Андрей