私は、分度器を使用してAngular 1.5アプリケーションのエンドツーエンドテストを作成しています。このアプリケーションを使用すると、標準のinput type="file"
コントロールとsubmit
ボタンを使用してファイルを選択することで、バックエンドWeb APIにファイルをアップロードできます。ユーザーがsubmit
ボタンをクリックしたときに約束が解決される前後に値を検証する方法は?
function exampleController() {
var vm = this;
vm.status = "";
vm.buttonClickHandler = buttonClickHandler;
function buttonClickHandler() {
vm.status = "calling";
service.makeAsyncCall()
.then(function() {
vm.status = "success";
}, function() {
vm.status = "error";
});
}
}
buttonClickHandler
が呼び出された:私は基本的にこのように振る舞うコントローラーを持っています。
ユーザーがボタンをクリックしたときに状態が「呼び出し」に変化し、約束が解決されたときに「成功」に変化することを確認する突起子を使用してエンドツーエンドのテストを作成するにはどうすればよいですか?私の試みのほとんどで
、私はvm.status
が「成功」に設定されていたことを確認でき、または私はそれはときに私はignoreSynchronization = true
を設定した場合、「呼び出し」が、後者のみ作品に設定されたことを確認できました私はWeb APIのバックエンド呼び出しで人工的な遅延を作ります。そうでなければ、プロセスは明らかに速すぎて、値は「成功」を示します。
を任意のはありますUI側で「ステータス」が変わることを示す? – alecxe
@alecxeはい、UIは、私が望む 'status'の変更を正しく示しています。私は自動化されたテストでそれらをキャプチャしているようには見えません。 – Daan
コントローラー内のフィールドにアクセスする代わりに、ステータステキストを持つ要素、またはロードスピナーを確認できますか?ありがとう。 – alecxe