Skip to main content

ProtractorPage

Protractor-specific implementation of Page.

Hierarchy

  • Page<ElementFinder>
    • ProtractorPage

Index

Constructors

constructor

  • new ProtractorPage(session: ProtractorBrowsingSession, browser: ProtractorBrowser, modalDialogHandler: ModalDialogHandler, errorHandler: ProtractorErrorHandler, pageId: CorrelationId): ProtractorPage
  • Parameters

    • session: ProtractorBrowsingSession
    • browser: ProtractorBrowser
    • modalDialogHandler: ModalDialogHandler
    • errorHandler: ProtractorErrorHandler
    • pageId: CorrelationId

    Returns ProtractorPage

Properties

readonlyid

id: CorrelationId

Methods

createPageElement

  • createPageElement(nativeElement: ElementFinder): PageElement<ElementFinder>
  • Parameters

    • nativeElement: ElementFinder

    Returns PageElement<ElementFinder>

locate

  • locate(selector: Selector): PageElement<ElementFinder>
  • Parameters

    • selector: Selector

    Returns PageElement<ElementFinder>

locateAll

  • locateAll(selector: Selector): PageElements<ElementFinder>
  • Parameters

    • selector: Selector

    Returns PageElements<ElementFinder>

enableAngularSynchronisation

  • enableAngularSynchronisation(enable: boolean): Promise<boolean>
  • If set to false, Protractor will not wait for Angular 1.x $http and $timeout tasks to complete before interacting with the browser.

    This can be useful when:

    • you need to switch to a non-Angular app during your tests, e.g. to sign in using an SSO gateway
    • your app continuously polls an API with $timeout

    If you’re not testing an Angular app, it’s better to disable Angular synchronisation completely in protractor configuration:

    // protractor.conf.js
    exports.config = {
    onPrepare: function () {
    return browser.waitForAngularEnabled(false)
    },

    // ... other config
    }

    Parameters

    • enable: boolean

    Returns Promise<boolean>

navigateTo

  • navigateTo(destination: string): Promise<void>
  • Parameters

    • destination: string

    Returns Promise<void>

navigateBack

  • navigateBack(): Promise<void>
  • Returns Promise<void>

navigateForward

  • navigateForward(): Promise<void>
  • Returns Promise<void>

reload

  • reload(): Promise<void>
  • Returns Promise<void>

sendKeys

  • sendKeys(keys: (string | Key)[]): Promise<void>
  • Parameters

    • keys: (string | Key)[]

    Returns Promise<void>

executeScript

  • executeScript<Result, InnerArguments>(script: string | (...parameters: InnerArguments) => Result, ...args: InnerArguments): Promise<Result>
  • Type parameters

    • Result
    • InnerArguments: any[]

    Parameters

    • script: string | (...parameters: InnerArguments) => Result
    • rest...args: InnerArguments

    Returns Promise<Result>

executeAsyncScript

  • executeAsyncScript<Result, Parameters>(script: string | (...args: [...parameters: Parameters[], callback: (result: Result) => void]) => void, ...args: Parameters): Promise<Result>
  • Type parameters

    • Result
    • Parameters: any[]

    Parameters

    • script: string | (...args: [...parameters: Parameters[], callback: (result: Result) => void]) => void
    • rest...args: Parameters

    Returns Promise<Result>

lastScriptExecutionResult

  • lastScriptExecutionResult(): any
  • Returns any

takeScreenshot

  • takeScreenshot(): Promise<string>
  • Returns Promise<string>

cookie

  • cookie(name: string): Promise<Cookie>
  • Parameters

    • name: string

    Returns Promise<Cookie>

setCookie

  • setCookie(cookieData: CookieData): Promise<void>
  • Parameters

    • cookieData: CookieData

    Returns Promise<void>

deleteAllCookies

  • deleteAllCookies(): Promise<void>
  • Returns Promise<void>

title

  • title(): Promise<string>
  • Returns Promise<string>

name

  • name(): Promise<string>
  • Returns Promise<string>

url

  • url(): Promise<URL>
  • Returns Promise<URL>

viewportSize

  • viewportSize(): Promise<{ width: number; height: number }>
  • Returns Promise<{ width: number; height: number }>

setViewportSize

  • setViewportSize(size: { width: number; height: number }): Promise<void>
  • Parameters

    • size: { width: number; height: number }

    Returns Promise<void>

close

  • close(): Promise<void>
  • Returns Promise<void>

closeOthers

  • closeOthers(): Promise<void>
  • Returns Promise<void>

isPresent

  • isPresent(): Promise<boolean>
  • Returns Promise<boolean>

switchTo

  • switchTo(): Promise<SwitchableOrigin>
  • Switches the current browsing context to the given page and returns an object that allows the caller to switch back to the previous context when needed.

    Learn more


    Returns Promise<SwitchableOrigin>

modalDialog

  • modalDialog(): ModalDialogHandler

toString

  • toString(): string
  • Returns a description of this Page and its ID.


    Returns string