PL/SQLの単体テストの経験またはツールを持っている人。これに関して私が見た中で最も見栄えの良いツールは Quests Code Tester のようですが、それが継続的統合ツールやコマンド ライン テストとどの程度うまく統合されるかはわかりません。
8 に答える
フレームワークとしてutPLSQLを使用し、クライアントとしてOUnitを使用します。utPLSQLは、実際には単独で使用することを意図したものではなく、優れたグラフィカルクライアントが必要です。OUnitはQuteの前身です。Quteも優れたツールですが、私の要件よりも複雑です。GUIを使用してテストを構築でき、テストコードの生成などの優れた機能を実行できます。
編集:私の理解では、utPLSQLはすべての結果をデータベーステーブルに保存します。これには、継続的インテグレーションのための統計を収集するための優れたデータソースとなるすべての履歴結果が含まれます。テストグループを定義して、utPLSQLを1回呼び出すだけで複数のテストパッケージを呼び出すこともできます。
Rubyライブラリruby-plsqlを使用してPL/SQL単体テストフレームワークを作成して使用しました。
utPLSQLよりもはるかに短くて読みやすいテストを提供し、GUIツール(Quest CodeTesterやSQLDeveloper2.1など)と比較して柔軟性があります。
utPLSQLをチェックしてください。使い始めるのは少し難しいと思いましたが、かなりうまく機能していると思います。
継続的インテグレーション ツールに関しては、utPLSQL で作成したストアド プロシージャを呼び出して結果をチェックするだけの通常のテスト (NUnit、C#) を作成していました。
SQL Developerの最新バージョンには、非常に興味深いユニット・テスト・スイートが含まれています。
ウィキペディアにいくつかリストされています: http://en.wikipedia.org/wiki/List_of_unit_testing_frameworks#PL.2FSQL
PL/SQL プロジェクトの継続的統合に関する興味深い記事を見つけました。
これは、前述の utPLSQL フレームワークを使用して、PL/SQL コードの単体テストを処理します...
pythonpy.test
を使用しcx_oracle
て、pl/sql パッケージのテスト スクリプトを作成しています。これまでのところうまく動作します。
私は最近、 PL/SQL Commonsツールキットの単体テスト フレームワークをうまく使用しました(著者のスライドも参照してください)。このツールキットは (執筆時点では) まだ公開されていませんが、作成者に電子メールを送信すると、動作するパッケージが入手できます (少なくとも私は入手できます)。