title: Batch/atomic operations in Selenium RemoteWebDriver?
body: <p>Looking at the source code of the <code>RemoteWebDriver</code>, every operation, including getting the text of a just-obtained <code>WebElement</code>, requires sending a separated command to the browser. I am worried that in a highly dynamic Javascript web app, this could result in inconsistent reads / random exceptions.</p>
  
  <p>Can anyone explain how Selenium calls are synchronized with the JavaScript event queue on the page? If they're not synchronized, is there any way to do multiple Selenium calls in a batch/transaction/atomic operation apart from embedding large blobs of custom JavaScript?</p>