- PR -

自動テストツールについて

1
投稿者投稿内容
ディム
会議室デビュー日: 2004/10/21
投稿数: 2
お住まい・勤務地: 東京都内のどこかで働いているはず
投稿日時: 2005-09-30 21:03
投稿は初めてです。よろしくお願いします。

今私は自動テストツールについて調べて回ってるのですが、みなさんは自動テストツールはどんなものを使っている、もしくは使ってみたけど、使い物にならないなどの情報を知りたく投稿いたしました。

テストをしたいことは、結合テスト〜の自動化をしたいというものです。目的は、リリース後の変更でもデグレーション防止がメインです。

ユニットテストツールについては、xUnitなどで知っているのですが、結合テスト以降のものの情報がなかなか見つからず、困っております。

どんなことでも知りたいので、ぜひ情報をいただけないでしょうか?

よろしくお願い致します。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-10-01 11:20
こんにちは、じゃんぬ です。

私は、こんなものしか知りません。
http://www.mercury.com/jp/solutions/net/

結合テストに関しては、テストケースを管理するツールはあっても、
自動テストを行う CASE ツールは皆無に等しい気がするのですが...

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
tsune
会議室デビュー日: 2002/07/09
投稿数: 15
お住まい・勤務地: 兵庫県西宮市
投稿日時: 2005-10-01 13:02
こんにちは、中西です。

自動化の意味合いが、「繰り返しテストが実行できること」として捉えられていて「テストの自動生成」ではないこと、アジャイル開発が行われていることを前程にして書きますので、趣旨とは少しずれてしまうかも知れません。

デグレーション防止が目的なら、VSS等のバージョン管理ツールとユニットテストの組み合わせでも有効です。ただしNUnitできちんとユニットテストが書かれていて、NUnit.GuiやNAntなどでテストが自動実行できるようになっている必要があります。

リリース後に変更を加えた場合は、その変更に対するユニットテストを追加します。そしてテストが全てパスすることで何も壊れていないことを確認できます。

また、受け入れテスト用のテスティングフレームワークとしては Fit(http://fit.c2.com/)がありますが、こちらは目的が異なりますね。受け入れテストは顧客が望んでいる機能がきちんと実装されているかどうかを確認するためのものなので。

アジャイル開発のプラクティスの話になってしまうのですが、開発者としては受け入れテストがどれだけパスしたかでプロジェクトの進捗を管理したりします。
ディム
会議室デビュー日: 2004/10/21
投稿数: 2
お住まい・勤務地: 東京都内のどこかで働いているはず
投稿日時: 2005-10-03 10:51
http://www.mercury.com/jp/products/quality-center/functional-testing/quicktest-professional/

このツールが、求めているものに近いかもしれません。
VB.Netで開発しておりますのでNUnitを使うのも手なんですけど・・・
何せほとんどの開発者が、アジャイル?なんですか?
オブジェクト指向=クラスを使うんでしょ。
というレベルです・・・・

単体テスト自動ツール自体知っているのも私だけですし、教育する暇もないというのが・・・

後は画面と帳票の見た目に依存する部分が多いため、NUnitだとデータの整合性を見るのはいいのですが、見た目のテストがしにくいのかな、と思っております。私のやり方がいけないのかもしれませんが・・・・

でも、データのチェック、ロジックのチェックには単体テスト自動ツール入れてTDDで開発したほうが、やっぱり効率的だなーと考えさせられました。

後半は愚痴っぽくなりましたが、アドバイスありがとうございます。
tsune
会議室デビュー日: 2002/07/09
投稿数: 15
お住まい・勤務地: 兵庫県西宮市
投稿日時: 2005-10-03 17:50
こんにちは、中西です。

アジャイルは、ただ強要してもうまくいきませんものね。チームのメンバー個々の「やってみよう」という態度がなければ成功しませんよね。

TDDでのユニットテスト記述はアサーションというよりは、自分が意図した設計ができているかどうかを確認する為のもの。要するにテストの記述自体が設計行為だと思ってます。

で、うまく実装ができたならユニットテストがリファクタリングのための安全ネットになり、変更を加えた際に何も壊していないことが確認できる。これがテストの自動化(繰り返し実行できるテストがある)のメリットだと思います。また、既存のコードの理解を深める為にテストコードを読むことで設計の意図が確認できる。ここで資産としてのテストコードの価値も生まれますね。

システム開発のライフサイクルのどの段階においても、ユニットテストを走らせることによる利点はとても大きいです。

一概にユニットテストといってもこのようにいろいろな用途がありますので、機会があれば是非アジャイル開発に足を踏み入れてみて下さいね。
1

スキルアップ/キャリアアップ(JOB@IT)