Getting Started with PhantomJS
Publisher: Packt Publishing
Published: 2013
Language: eng
ISBN-13: 9781782164234; 9781306166195; 9781782164227
Subjects: Web site development; Web sites; Design; Internet programming; COMPUTERS; General
Description: The book will follow aA standard tutorial approach, and will beas a complete guide detailing the major aspects of PhantomJS with particular focus on Website website Testingtesting. This book is written forIf you are a JavaScript developers who are is interested in developing applications that interact with various web services, and doing that using a headless browser, then this book is ideal for you. This book iswill also be good for you if you are planning to create a headless browser testing for your web application. Basic understanding of JavaScript is assumed.
Table of contents: title: Cover; Copyright; Credits; About the Author; About the Reviewers; www.PacktPub.com; Table of Contents; Preface; Chapter 1: Getting Started with PhantomJS; Downloading PhantomJS; Building PhantomJS from source; Meet PhantomJS; PhantomJS JavaScript API; The Module API; The WebPage API; The System API; The FileSystem API; The WebServer API; The phantom object; The command-line arguments; The script argument; The debug option; The cookie-file option; Writing PhantomJS scripts; Summary; Chapter 2: Manipulating Page Content; Opening a web page; Playing with DOM elements; Selecting elements.; title: Simulating mouse clicksPhantomJS event triggering; DOM event triggering; Working with form fields; Summary; Chapter 3: Handling Events and Callbacks; Listening to page events; Page load events; When a resource is requested; Receiving a page resource; Two stages of the resource received event; Knowing when the URL changes; Capturing alert messages; Answering prompt messages; OK or Cancel; title: responding to confirm pop ups; Performing user events; Keyboard events; Mouse events; Summary; Chapter 4: Capturing Errors; Handling PhantomJS errors; Capturing page script errors.; title: Anticipating the page loading errorExiting with error codes; Summary; Chapter 5: Grabbing Pages; Undocumented supported image format; Screenshot dimensions; Saving webpages as PDFs; Summary; Chapter 6: Accessing Location-based Services; Checking a location based on IP address; Getting driving directions; Looking up for pizza delivery establishments; Summary; Chapter 7: Working with Files; PhantomJS FileSystem API; Reading files; Checking for file existence; Opening the file; Closing the opened files; Writing files; Character encoding; Summary; Chapter 8: Cookies; Reading cookies.; title: Baking some cookiesDeleting cookies; Keeping cookies; Summary; Chapter 9: External JavaScript; Modules; Using the object-oriented modules; Using third-party JavaScript libraries; Summary; Chapter 10: Testing with PhantomJS; What is unit testing?; Unit testing with Jasmine; Downloading Jasmine; Test specs with Jasmine; The PhantomJS Jasmine runner; Summary; Chapter 11: Maximizing PhantomJS; CasperJS; GhostDriver; Screenshots, web metrics, and more; Summary; Index.