community.windows.win_pester – Run Pester tests on Windows hosts

Note

This plugin is part of the community.windows collection (version 1.3.0).

To install it use: ansible-galaxy collection install community.windows.

To use it in a playbook, specify: community.windows.win_pester.

Synopsis

  • Run Pester tests on Windows hosts.

  • Test files have to be available on the remote host.

Requirements

The below requirements are needed on the host that executes this module.

  • Pester

Parameters

Parameter Choices/Defaults Comments
output_file
string
Generates an output test report.
output_format
string
Default:
"NunitXML"
Format of the test report to be generated.
This parameter is to be used with output_file option.
path
string / required
Path to a pester test file or a folder where tests can be found.
If the path is a folder, the module will consider all ps1 files as Pester tests.
tags
list / elements=string
Runs only tests in Describe blocks with specified Tags values.
Accepts multiple comma separated tags.
test_parameters
dictionary
Allows to specify parameters to the test script.
version
string
Minimum version of the pester module that has to be available on the remote host.

aliases: minimum_version

Examples

- name: Get facts
  ansible.windows.setup:

- name: Add Pester module
  action:
    module_name: "{{ 'community.windows.win_psmodule' if ansible_powershell_version >= 5 else 'chocolatey.chocolatey.win_chocolatey' }}"
    name: Pester
    state: present

- name: Run the pester test provided in the path parameter.
  community.windows.win_pester:
    path: C:\Pester

- name: Run the pester tests only for the tags specified.
  community.windows.win_pester:
    path: C:\Pester\TestScript.tests
    tags: CI,UnitTests

# Run pesters tests files that are present in the specified folder
# ensure that the pester module version available is greater or equal to the version parameter.
- name: Run the pester test present in a folder and check the Pester module version.
  community.windows.win_pester:
    path: C:\Pester\test01.test.ps1
    version: 4.1.0

- name: Run the pester test present in a folder with given script parameters.
  community.windows.win_pester:
    path: C:\Pester\test04.test.ps1
    test_parameters:
      Process: lsass
      Service: bits

- name: Run the pester test present in a folder and generate NunitXML test result..
  community.windows.win_pester:
    path: C:\Pester\test04.test.ps1
    output_file: c:\Pester\resullt\testresult.xml

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
output
list / elements=string
success
Results of the Pester tests.

pester_version
string
always
Version of the pester module found on the remote host.

Sample:
4.3.1


Authors

  • Erwan Quelin (@equelin)

  • Prasoon Karunan V (@prasoonkarunan)