テスト駆動開発 3日目

2日目では、自分のPython バージョンまで分かりました。ようやく環境の羅列を終えられる。。

  • Mac OS 12.6
  • Visual Studio Code 1.72.2
  • Python 3.9.12

いったん、ケント・ベックさんのテスト駆動開発を振り返る

写経したのが2年くらい前なので、すっかり忘れておりまして。
そこからかよー、の自虐スタンスなので、焦らない。

Pythonで最初にRedを出すためのコードを、ケント・ベックさんのテスト駆動開発から引用させていただこうと思いましたが、こんな世界の片隅にひっそり佇むサイトでも著作権に触れてしまうかもしれないのでやめることにしました。

うーん、どうしよう。そっちを参考にして自分のオリジナルコードを作れば良いか。

TODOだけでも参考にさせていただこう。

– テストメソッドを呼び出す
– setUpを最初に呼び出す
– tearDownを後で呼び出す
– テストメソッドが失敗したとしてもtearDownを呼び出す
– 複数のテストを走らせる
– 収集したテスト結果を出力する

ケント・ベック テスト駆動開発より

はじめの一歩

はじめは、テストメソッドを呼び出すところから始めるんですね。
テストメソッドを呼び出せたらグリーン(Pass)。呼び出せなかったらレッド(False)。

ざっくりな説明としては、テストメソッドが走ったかどうか、テスト対象のクラス(TaishoKurasu)、フラグにはwasRun、最後にアサーション assert(test.wasRun)で検証を行うという流れ、とのこと。

はい、最初の失敗。本で読んだ通りです。

例外が発生しました

まず必要なのは、TaishoKurasu というクラスを定義するところから始める必要があるんですね。

ぱぱっとTaishoKurasuを定義してみます。

class TaishoKurasu:
     Pass

はい失敗ー、知ってた知ってた。

例外が発生しました TaishoKurasu() takes no arguments

ケント・ベックさんのテスト駆動開発では、

コンストラクタの引数が合わないと怒られる。(本文そのまま

ケント・ベック テスト駆動開発

今日はこのくらいにしておこう。だいぶ面白くなってきたところですが。