title: What is the difference between browser.pause() and browser.enterRepl()?
body: <p>In protractor, there is the <a href="http://angular.github.io/protractor/#/api?view=Protractor.prototype.pause"><code>browser.pause()</code> function</a>:</p>
  
  <blockquote>
    <p>Beta (unstable) <code>pause</code> function for debugging webdriver tests. Use
    browser.pause() in your test to enter the protractor debugger from
    that point in the control flow.</p>
  </blockquote>
  
  <pre><code>element(by.id('foo')).click();
  browser.pause();
  // Execution will stop before the next click action.
  element(by.id('bar')).click();
  </code></pre>
  
  <p>And, also, there is a less-known one - <a href="http://angular.github.io/protractor/#/api?view=Protractor.prototype.enterRepl"><code>browser.enterRepl()</code></a>:</p>
  
  <blockquote>
    <p>Beta (unstable) <code>enterRepl</code> function for entering the repl loop from any
    point in the control flow. Use browser.enterRepl() in your test. Does
    not require changes to the command line (no need to add 'debug').</p>
  </blockquote>
  
  <pre><code>element(by.id('foo')).click();
  browser.enterRepl();
  // Execution will stop before the next click action.
  element(by.id('bar')).click();
  </code></pre>
  
  <p>From the provided documentation and examples, it is clear that they both are used for debugging the tests. But, it is not clear, what is the difference between the two. </p>
  
  <p>When should we use <code>pause()</code> and when <code>enterRepl()</code>?</p>