Ruby
 Computer >> コンピューター >  >> プログラミング >> Ruby

アプリをテストなしからTDDに移行するにはどうすればよいですか?

あなたは自分が作ったアプリに興奮しています。問題は1つだけです。つまり、テストがありません。テスト駆動開発を使用して記述したかったのですが、どこから始めればよいのかよくわかりませんでした。だからあなたは立ち往生しています。ここからどこへ行くの? テストなしのアプリから、TDDを使用してアプリを作成するにはどうすればよいですか?

すでに持っているコードをテストする

テストのないコードがたくさんあります。しかし、それはあなたがテストを書くことができないという意味ではありません 、既存のコードに対して。したがって、既存のコードのテストを開始して、コードが期待どおりに機能することを確認します。

TDDではありません。 ただし、既存のコードをテストすると、学習するのに役立ちます TDD

  • エッジケースとエラー状態について考える練習をします。

    考えられるすべての入力のテストに何年も費やすことなくテストを作成するには、コードが破損する可能性が最も高い場所について考える必要があります。テストしているメソッドが文字列を使用する場合、それにシンボルを渡すとどうなりますか? nilを渡すとどうなりますか ?また、数値を除算する関数をテストする場合は、0でテストすることをお勧めします。ただし、おそらく1でテストする必要はありません。 2.

    十分なテストを作成したら、メソッドが失敗する可能性が最も高い場所を予測し始めます。また、TDDingを開始すると、このスキルを使用して、コードがエッジケースをより適切に処理できるようにする堅牢なテストを作成できます。

  • 適切に構成されたテストの作成を練習します。

    事後にテストを作成する場合、それらのテストを構成するためのさまざまなパターンを試すことができます。テストしているコードはすでにそこにあるので、テストとその記述方法に集中できます。そして、いくつかの良いパターンを学んだら、しないときにもっと良いテストを書くことができます。 頼りになるコードを持っている。

  • コードのテストを困難にするものを発見します。

    さらにテストを作成すると、システムのどの領域をテストするのが最も難しいかを感じ始めます。これらの領域に気付いたら、リファクタリングが必要な場所として強調表示できます。さらに良いことに、最初からテスト可能なコードを書き始めることができます。

    テストしやすいコードがどのように見えるかがわかれば、その知識を使ってテストしやすいAPIをTDDすることができます。そして、それはあなたがあなたのアプリをより速く構築するのを助けるでしょう。

TDDに簡単に

テストアフターを使用して、学習に役立つスキルを身に付けることができます。 TDD。ただし、最終的にはアプリの一部をTDDする必要があります。 そして、TDDを使いやすくし、既存のコードに頼る簡単な方法があります。それは、回帰テストを作成することです。

回帰テストは、すでに修正したコードを壊さないようにします。アイデアは非常に単純です。バグについて聞いたときはいつでも、ブラウザをクリックして再現するのではなく、次のようにします。

  • 失敗したテストを書く バグを再現します。
  • テストを実行する 、そしてそれらが失敗することを確認してください(そのバグがまだ存在するため)。
  • バグを修正する 可能な限り簡単な方法で。
  • テストを実行する 、合格していることを確認してください。
  • リファクタリング 必要に応じて修正します。

これは、新しいシステムを最初からTDDするよりもはるかに簡単です。これは、すでに存在するコードへの変更をテストドライブするだけだからです。 TDDの本質的なループである「赤、緑、リファクタリング」の習慣を構築します。 そして、ここから、TDDは、テストなしでTDDに直接移行しようとするよりも短いステップです。

何もないところからTDDへ

テストのないアプリは、始めるのに悪い場所ではありません。既存のコードをテストすると、優れたTDDテストを作成するために必要な多くのことを学ぶことができます。まだ設計方法がわからないAPIを想像する必要がないため、最初はTDDよりもテストアフターが簡単です。また、TDDをアプリに導入することを決定したら、回帰テストで簡単に利用できます。

したがって、想像しているシステムをTDDする方法がわからない場合は、テストを書き続けてください。最初にコードを書く必要がある場合でも。


  1. Google に追跡されないようにする方法

    ブログのまとめ – ある時点で、Google はあなたの友人や家族よりもあなたのことをよく知っているかもしれません。はい、そうです。彼らは、インターネットの使用状況であなたの睡眠パターンを把握し、検索結果であなたの頭に浮かんだことを知っています。しかし、これをやめたいですか? Google による追跡を停止する方法について学びましょう。 Google が関連性の高い広告をすべて表示しなくなったらいいのにと思いませんか?その場合、入力、視聴、発言のすべてを Google に追跡させたくない場合は、このまま読み進めてください。 Google は、何らかの形で私たちの生活に欠かせないものになりまし

  2. iMessage からアプリ アイコンを非表示にする方法

    iOS 11 には素晴らしい機能が満載です。これは、これまでのところ Apple の巨大なソフトウェア アップデートの 1 つです。 Appleが最近リリースした最新のソフトウェアバージョンにデバイスをアップグレードしたに違いない.刷新されたコントロール センター、新しく設計された App Store、高度な Siri サポートなど、これはあなたが抵抗できないものですよね? はい、iOS のデフォルトのメッセージ アプリにも大きな変更がいくつかあります。気付いているかどうかはわかりませんが、新しいメッセージを開くとすぐに、iMessage のクイック アクセス アプリ メニューが表示されます