OutSystemsでの単体テストと回帰テスト

目次

  1. 単体テスト
  2. BDD / TDD
  3. 機能、UI、回帰

OutSystemsは、100%標準のモバイルおよびWebアプリ(サーバー側に標準Webスタック)を生成します。そのため、市販のテストツールの多くを、単体テスト、回帰テスト、機能(ユーザーストーリー)テスト、統合テスト、負荷テストに使用できます。

OutSystemsには、ビジュアル開発機能および継続的な完全性検証機能が組み込まれているため、他のテクノロジーと比較してもバグの発生件数が大幅に少ないことをすぐに実感できます。業界で使用されている標準的なツールを使用した場合でも、テスト-修正のサイクルを短縮できるため、関連する開発・デリバリーの労力を大幅に削減できます。

単体テスト


OutSystems Forgeに用意されている単体テストのフレームワークは、単体テストを実装、実行、管理するための完全なフレームワークを提供します。これはNUnitやJUnitのほか、HP Quality Center、HP Load Runner、WAPT、Rally Quallity Manager、Seleniumと同等です。

このアプローチは、計算エンジンやビジネスサービスコンポーネントの用途で特に効果的であると評価されています。回帰テストが自動化され容易であるため、優れた単体テストはシステムの変更やリファクタリング時に非常に有効です。

BDD / TDD


BDD(ビヘイビア駆動開発)およびTDD(テスト駆動開発)を実践することで、品質重視のデリバリープロセスをチームで作り出すことができます。テストを作成するうえでの要件は大きく変わらないものの、このアプローチをとることで、最もクリティカルなユースケースに焦点を絞ってテストを作成できます。

OutSystems ForgeのBDDFrameworkコンポーネントは、ユーザーのニーズに合わせて適用できるオープンソースのコンポーネントですが、以下の点においてすでに作業が簡素化されています。

  • BDDの原則に即したテストシナリオや手順を作成する。
  • アプリ設計の早い段階でシナリオや手順を定義し、機能を実装した時点でテストコーディングを行うことでTDDを実施する。
  • ブロック(シナリオ + Given/When/Then節)をドラッグ&ドロップすることでシナリオや手順を簡単に追加する。
  • 各テスト手順がそのアクション内で実装されるようにし、複数の手順が同一リクエスト内で逐次的に実行されるようにする。
  • テスト保守を拡張する。テスト出力がIDEでの設計どおりであるため、手順の失敗を正確に突き止め、背後にあるコーディングを評価することが簡単になります。/li>
  • 同一ページ内の複数のテストをサポートし、最終統計(テスト成功数、失敗数)を評価する。

次のビデオは、このフレームワークを使用してサンプルのeコマースアプリケーションのテストを自動化する方法をご紹介します。

機能、UI、回帰


OutSystemsアプリケーションの機能テストおよび回帰テストには、Seleniumを使用することが推奨されます。OutSystemsアプリケーションは標準的なWebアプリケーションであるため、従来のWebアプリテストに現在使用されている戦略はすべて適用できます。OutSystemsでは、Seleniumを使用してOutSystemsアプリケーションをテストする方法について、ガイドおよびベストプラクティスを提供しています。

また、OutSystems Forgeには、チームの業務を支援するために、「Test Automator」という、ブラウザ(Seleniumベース)および単体(Webサービスベース)回帰テストツールが用意されています。