func (w *WebDriver) NewPage(options ...Option) (*Page, error) {
	newOptions := w.defaultOptions.Merge(options)
	session, err := w.Open(newOptions.Capabilities())
	if err != nil {
		return nil, fmt.Errorf("failed to connect to WebDriver: %s", err)
	}

	return newPage(session), nil
}
func (w *WebDriver) NewPage(options ...Option) (*Page, error) {
	newOptions := w.defaultOptions.Merge(options)
	session, err := w.Open(newOptions.Capabilities())
	if err != nil {
		return nil, fmt.Errorf("failed to connect to WebDriver: %s", err)
	}

	return newPage(session), nil
}
// NewPage returns a *Page that corresponds to a new WebDriver session.
// Provided Options configure the page. For instance, to disable JavaScript:
//    capabilities := agouti.NewCapabilities().Without("javascriptEnabled")
//    driver.NewPage(agouti.Desired(capabilities))
// For Selenium, a Browser Option (or a Desired Option with Capabilities that
// specify a Browser) must be provided. For instance:
//    seleniumDriver.NewPage(agouti.Browser("safari"))
// Specific Options (such as Browser) have precedence over Capabilities
// specified by the Desired Option.
//
// The HTTPClient Option will be ignored if passed to this function. New pages
// will always use the *http.Client provided to their WebDriver, or
// http.DefaultClient if none was provided.