The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

HTTP::WebTest::Plugin::Cookies - Send and recieve cookies in tests

SYNOPSIS

Not Applicable

DESCRIPTION

This plugin provides means to control sending and recieve cookies in web test.

TEST PARAMETERS

accept_cookies

Option to accept cookies from the web server.

These cookies exist only while the program is executing and do not affect subsequent runs. These cookies do not affect your browser or any software other than the test program. These cookies are only accessible to other tests executed during test sequence execution.

See also the <send_cookies> parameter.

Allowed values

yes, no

Default value

yes

send_cookies

Option to send cookies to web server. This applies to cookies received from the web server or cookies specified using the cookies test parameter.

This does NOT give the web server(s) access to cookies created with a browser or any user agent software other than this program. The cookies created while this program is running are only accessible to other tests in the same test sequence.

See also the <accept_cookies> parameter.

Allowed values

yes, no

Default value

yes

Synonym to cookies.

cookies

Specifies a cookie(s) to send to the web server.

Each cookie is specified by following list:

    ( version
      name
      value
      path
      domain
      port
      path_spec
      secure
      maxage
      discard
      name1
      value1
      name2
      value2
      ...
    )

Any element not marked below as REQUIRED may be defaulted by specifying a null value or ''.

  • version (REQUIRED)

    Version number of cookie spec to use, usually 0.

  • name (REQUIRED)

    Name of cookie. Cannot begin with a $ character.

  • value (REQUIRED)

    Value of cookie.

  • path (REQUIRED)

    URL path name for which this cookie applies. Must begin with a / character. See also path_spec.

  • domain (REQUIRED)

    Domain for which cookie is valid. (REQUIRED). Should begin with a period. Must either contain two periods or be equal to .local.

  • port

    List of allowed port numbers that the cookie may be returned to. If not specified, cookie can be returned to any port. Must be specified using the format N or N, N, ..., N where N is one or more digits.

  • path_spec

    Ignored if version is less than 1. Option to ignore the value of path. Default value is 0.

    • 1

      Use the value of path.

    • Ignore the specified value of path.

  • secure

    Option to require secure protocols for cookie transmission. Default value is 0.

    • 1

      Use only secure protocols to transmit this cookie.

    • Secure protocols are not required for transmission.

  • maxage

    Number of seconds until cookie expires.

  • discard

    Option to discard cookie when the program finishes. Default is 0. (The cookie will be discarded regardless of the value of this element.)

    • 1

      Discard cookie when the program finishes.

    • Don't discard cookie.

  • name/value

    Zero, one or several name/value pairs may be specified. The name parameters are words such as Comment or CommentURL and the value parameters are strings that may contain embedded blanks.

An example cookie would look like:

    ( 0
      WebTest cookie #1
      expires&2592000&type&consumer
      /
      .unixscripts.com
      ''
      0
      0
      200
      1
    )

See RFC 2965 for details (ftp://ftp.isi.edu/in-notes/rfc2965.txt).

Usage in wtscript files

You may specify multiple cookies within each test block by specifying multiple instances of the cookies parameter.

Usage in Perl scripts

Use arrayref of arrayrefs containing cookies to pass with the HTTP request.

Each array must have at least 5 elements; if the number of elements is over 10 it must have an even number of elements.

COPYRIGHT

Copyright (c) 2000-2001 Richard Anderson. All rights reserved.

Copyright (c) 2001,2002 Ilya Martynov. All rights reserved.

This module is free software. It may be used, redistributed and/or modified under the terms of the Perl Artistic License.

SEE ALSO

HTTP::WebTest

HTTP::WebTest::API

HTTP::WebTest::Plugin

HTTP::WebTest::Plugins