- 題名: NUnitのテストについて
- 日時: 2006/08/22 9:57:13
- ID: 17198
- この記事の返信元:
- (なし)
- この記事への返信:
- [17199] Re[1]: NUnitのテストについて2006/08/22 10:33:37
- ツリーを表示
こんにちは。 DBでの確認ですが、DB自体を確認するしかないと思います。 DataSetとかでDB取得メソッドを用意しそれを確認するとか [Test] public void データベースレコード削除() { Delete(); // 削除。 DataSet ds = GetDbData( "SELECT COUNT(*) FROM xx WHERE xx" ); // 取得してみる。 Assert.AreEqual( ds.Table[0].Rows.Count, 0 ); // 結果が0なら削除された。 } こんな感じになるんではないでしょうか?? ニュアンスで書いてますけど。汲み取っていただければ幸いです。 結局、無い袖は振れない訳で GUIのテストだってそのボタンが押されたかのような振る舞いをするメソッドとか キーが押されたかのような振る舞いをするメソッドとか そういった類のものを用意するとか必要なんではないかと思いますが 如何でしょうか。
分類:[.NET]
はじめまして。
私はC#で開発を行っています。
今回はNUnitを使って開発を行う事になったのですが、
分からない事がたくさんありますが、
いろいろと質問するのは悪いので、一番気になっている事を書かしてもらいます。
NUnitを動かすという事に関しては大丈夫なのですが、
いろいろなホームページを見ても、テストするメソッドは短く、必ず戻り値があるというのが前提みたいで、例えば、戻り値がvoidだった場合のメソッドのテストはどうすればいいのでしょうか?
例えば、下記のような場合です。
TestClass s = new TestClass();
Assertion.AssertEquals(2, ?);//戻り値がvoidなので?の箇所に書けない。
TestClassのメソッドを実行したら、データベースを更新するだけのメソッドしか持っていなくて、戻り値がvoidだとすると、
そのデータが本当に更新されたのか?というテストが出来ない状態です。
テストの為にわざわざSelect文のSQLを発行するテストコードが必要なのでしょうか?
その場合は、テストコードのテストとか必要になってくるのでしょうか?
テストコードが書けない状態というのは存在するのでしょうか?
このような感じで今は迷いに迷っています。
テストコードをどのように書けばいいのか?分からない状態です。
voidの場合のテスト方法を知っている方がいましたらアドバイスください。
その他、NUnitを使って綺麗にテストコードを書くアドバイスやホームページなどもありましたら教えてください。
よろしくお願いします。