使用 browser.pause()

pause() 方法是最簡單的解決方案之一,Protractor 為你提供了除錯程式碼的方法,為了使用它,你必須將其新增到你希望暫停執行的程式碼中。一旦執行處於暫停狀態:

  1. 你可以使用 C(C 型)向前移動。使用它時要小心,你必須毫不拖延地編寫這個命令,因為如果延遲按 c,你的斷言庫可能會出現超時錯誤。

  2. 輸入 repl 進入互動模式。互動模式用於將瀏覽器命令直接傳送到開啟的瀏覽器例項。例如,在互動模式下,你可以發出如下命令:

> element(by.css('#username')).getText() 
> NoSuchElementError: No element found using locator: by.username("#username")

注意上面命令的輸出直接顯示在那裡,這可以讓你知道命令的正確性。

注意:如果你已經開啟 Chrome 開發工具,則必須在繼續測試之前關閉它們,因為當 Dev Tools 開啟時 ChromeDriver 無法執行。

  1. 使用 CTRL+C 退出除錯模式,你可以使用傳統的 CTRL + C 命令從除錯模式中退出。
 it('should pause when we use pause method', function () {
    browser.get('/index.html');
    
    var username = element(by.model('username'));
    username.sendKeys('username');
    browser.pause();

    var password = element(by.model('password'));
    password.sendKeys('password');
    browser.pause();
});
  1. 按 d 繼續下一個偵錯程式語句