単体テストや統合テスト (構造やガイドラインのない開発者/ユーザーによるすべてのテスト) を行ったことのない既存の Web アプリケーションの複雑なワークフロー テストを構築するという興味深いタスクがあります。
設定
ターゲットは、数年かけて構築された ASP.NET (MVC なし) Web アプリケーションです。クリーンな MVC やその他のパターンがないため、HTML 出力は非常に悪いです (生成された ID、CSS クラスがあまりなく、CSS スタイルに沿っている --> テストが難しい)。アプリケーションはデータ中心であるため、テストすることが多く、データベースのステータスはテストにとって非常に重要です。
次のワークフローを考えています: 1. データベースをリセットして開始データをテストする 2.シミュレーション ユーザー インタラクションによってデータを作成およびテストするテストを実行する
ツール
Selenium IDE をいじっていましたが、十分に構造化されていないように感じます。私は、ブラウザで実行できる(読み書きのできる)coffeescript / javascriptでテストを書くことができるツールセットを夢見ています(ヘッドレステストは必要ありません)が、私が見つけることができるすべてのツールは、ユーザーではなくJavaScript機能をテストすることを目的としています相互作用。
私のテスト手順は次のとおりです。
- ページの読み込み
- テキスト A を検索するか、ul B の要素を数えることによって、ページが正しく読み込まれたかどうかをテストします
- ボタン C をクリックし、ポップアップ D を待ち、フィールド E にテキストを入力します。
- 保存ボタンをクリックし、フィールド E のテキストが要素 F に表示されているかどうかを確認します
jasmineはこの種のユーザー インタラクションをテストできますか? javascript 関数または HTML 要素の存在に関するジャスミン テストのみを見つけることができますが、相互に依存するテスト ステップを含む複雑なワークフローについては見つけることができません。
前もって感謝します!