Skip to main content

Page title asserts

the page title should[ not] be <blank|empty>

Checks whether or not the title of the current page matches a blank or empty string. Reports an assertion error if the match fails.

With custom assertion error message (as of v3.9.0):

the page title should[ not] be blank  @Message("my custom assert fail message")


Without any timeout (as of v3.73.0):

@Timeout('0s') the page title should[ not] be blank


With custom timeout (as of v3.73.0):

@Timeout('10s') the page title should[ not] be blank

Where

  • not negates the match if included
  • <timeoutSecs> is the timeout period in seconds
  • <wait|timeout> is either wait or timeout

Example

  When I navigate to "https://todomvc.com/examples/react/dist"
Then the page title should not be blank

Trimming (since v3.62.0)

  • The @Trim annotation can be used on step to trim strings when comparing
the page title should[ not] <match> "<expression>"

Checks whether or not the title of the current page in the browser matches a given expression. Reports an assertion error if the match fails.

With custom assertion error message (as of v3.9.0):

the page title should[ not] <match> "<expression>"  @Message("my custom assert fail message")


Without any timeout (as of v3.73.0):

@Timeout('0s') the page title should[ not] <match> "<expression>"


With custom timeout (as of v3.73.0):

@Timeout('10s') the page title should[ not] <match> "<expression>"

Where

  • not negates the match if included
  • <match> is the type of match to perform, one of:

    • be for exact match
    • contain for partial match
    • start with for partial leading match
    • end with for partial trailing match
    • match regex for regex match
    • match xpath for XML match
    • match json path for JSON path match, since v1.4.0
    • match template for template match, since v2.16.0
    • match template file for template file match, since v2.16.0
  • <expression> is the expression to match (can be in DocString position)
  • <timeoutSecs> is the timeout period in seconds
  • <wait|timeout> is either wait or timeout

Example

  When I navigate to "https://todomvc.com/examples/react/dist"
Then the page title should contain "TodoMVC"

Trimming and ignoring case (since v3.62.0)

  • The @Trim annotation can be used on step to trim strings when comparing
  • The @IgnoreCase annotation can be used on step to ignore case when comparing
the page title should[ not] <match> <expressionRef>

Checks whether or not the title of the current page in the browser matches a referenced expression. Reports an assertion error if the match fails.

With custom assertion error message (as of v3.9.0):

the page title should[ not] <match> <expressionRef>  @Message("my custom assert fail message")


Without any timeout (as of v3.73.0):

@Timeout('0s') the page title should[ not] <match> <expressionRef>


With custom timeout (as of v3.73.0):

@Timeout('10s') the page title should[ not] <match> <expressionRef>

Where

  • not negates the match if included
  • <match> is the type of match to perform, one of:

    • be for exact match
    • contain for partial match
    • start with for partial leading match
    • end with for partial trailing match
    • match regex for regex match
    • match xpath for XML match
    • match json path for JSON path match, since v1.4.0
    • match template for template match, since v2.16.0
    • match template file for template file match, since v2.16.0
  • <expressionRef> is the name of the binding containing the expression to match

    • Can be the name of any binding that contains or resolves to an expression value, including a web element in which case the text in the element will be dynamically retrieved and used.
  • <timeoutSecs> is the timeout period in seconds
  • <wait|timeout> is either wait or timeout

Example

  Given the app name is "TodoMVC"
When I navigate to "https://todomvc.com/examples/react/dist"
Then the page title should contain the app name

Trimming and ignoring case (since v3.62.0)

  • The @Trim annotation can be used on step to trim strings when comparing
  • The @IgnoreCase annotation can be used on step to ignore case when comparing