2013-03-06 45 views
1

有一個關於如何運行與angularjs端到端測試的基本文件:http://docs.angularjs.org/guide/dev_guide.e2e-testing如何使用angularjs編寫測試時處理重定向?

在我的項目,我用angularjs對於多頁的Web應用程序。當我點擊頁面中的鏈接時,它會打開一個全新的頁面。還有一個登錄頁面,我必須在測試之前登錄。

我會盡我的測試如下:

  1. 訪問登錄頁面
  2. 輸入用戶名和密碼
  3. 提交表單
  4. 訪問真正的頁面我想測試
  5. 測試該頁

但我沒有找到任何信息abo該文件中的文件名爲redirect。我該怎麼辦?

+0

你的意思是'瀏覽器()的NavigateTo(URL)'? – 2013-03-06 22:39:20

回答

0

不要擔心測試準備。整個事情發生在一個可以靠自己生存的iframe中。

因此,如果您點擊發生重定向的鏈接,它將會重定向。

請注意,e2e測試中沒有特殊的設置部分,這意味着所有的測試都是測試,這意味着您的設置階段也是測試。

你可以做的是正確準備安裝第一個測試:

describe('My Whole Test Suite', function() { 


    it('Should be able to access page', function() { 
     browser().navigateTo('/whereSetupOccurs'); 
     input('#username').enter('john'); 
     input('#password').enter('psswrd'); 

     // when you click redirection happen anyway 
     element('#submit').click(); 

     //check that redirection was made properly 
     expect(browser().location().url()).toContain("/whereIWantedToGoForMyTests"); 

    }); 


    it('Should be able to ...', function() { 
     // the real tests you wanted here 
    }); 

});