2017-11-24 6 views
0

ジャスミンの魅力と一緒に分度器ジャスミンフレームワークを使用していますが、次のための明確化を与えるreporter.Please:分度器のカスタム報告

  1. は、レポーター合格/手順を失敗しているだけだけdescribeitブロックに基づいていますか?
  2. itブロック内で複数のステップを使用しています。 ブロックを使用せずにテストステップを追加するにはどうすればよいですか?itブロックを使用しますか?各ステップごとにレポートする必要があります。
  3. htmlファイルレポーターに渡されたexpectステートメントを印刷するにはどうすればよいですか?
+0

なぜ 'it'ブロック内に複数のステップを使用しているのですか?1ステップ/ 1基本テストケースがあるのはなぜですか? –

+0

複数のステップをカバーする必要がある場合は、サイドページオブジェクトに単一の関数としてバンドルし、specファイルから 'it'ブロック内の単一ステップとしてコールします。 –

答えて

-1

itブロックで連鎖を使用して複数の条件を使用できます。

it("checks URLs redirect to data browser after deletion.", function() { 
      var EC = protractor.ExpectedConditions, 
       modalTitle = modalInstance.recordPage.getConfirmDeleteTitle(), 
       config, redirectUrl; 

      browser.executeScript('return configObject;').then(function(configObject) { 
       config = configObject; 
       return modalInstance.recEditPage.getDeleteRecordButton().click() 
      }).then(function() { 
       browser.wait(EC.visibilityOf(modalTitle), browser.params.defaultTimeout); 
       // expect modal to open 
       return modalTitle.getText(); 
      }).then(function (text) { 
       expect(text).toBe("Confirm Delete!!"); 

       return modalInstance.recPage.getConfirmDeleteButton().click(); 
      }).then(function() { 
       redirectUrl = "https://test/xyz"; 

       browser.wait(function() { 
        return browser.driver.getCurrentUrl().then(function(url) { 
         return url.startsWith(redirectUrl); 
        }) 
       }); 

       return browser.driver.getCurrentUrl(); 
      }).then(function (url) { 
       expect(url.startsWith(redirectUrl)).toBe(true); 

      }).catch(function(error) { 
       console.dir(error); 
       expect(error).not.toBeDefined(); 
      });; 
     }); 

私は報告するためにを使用します。

+0

仕様ファイルに低レベルのプログラミングロジックを公開することはお勧めしません。スペックファイルは機能のビジネス/ドメインレベルのビューを提供するためのものです。よく定義された手動テストケースのようにできるだけ読むべきです。 –