Invoke-Pester -CodeCoverage заявляет о 0% покрытии кода при тестировании функции модуля

Я написал функцию для dbatools под названием New-DbaSqlConnectionStringBuilder. Я написал для него модульные тесты. Я знаю, что эти модульные тесты охватывают большую часть функции. Я получаю отчет о покрытии кода 0% с помощью следующей команды.

Invoke-Pester. \ Tests \ New-DbaSqlConnectionStringBuilder.Tests.ps1 -CodeCoverage. \ Functions \ New-DbaSqlConnectionStringBuilder.ps1

Сокращенный вывод ниже:

**********************

Running C:\Users\zippy\Documents\dbatools\tests\New-

. . .
Unit tests happen
. . .


Passed: 16 Failed: 0 Skipped: 0 Pending: 0 Inconclusive: 0


Code coverage report:
Covered 0.00% of 21 analyzed commands in 1 file.

Чтобы получить эту версию кода:

git clone https://github.com/zippy1981/dbatools.git
cd dbatools
git checkout testing/PesterCodeCoverage
Import-Module .\dbatools.psd1

Что я делаю неправильно?


person Justin Dearing    schedule 02.10.2017    source источник
comment
Можете ли вы показать, как вы включаете файл с функциями, которые вы тестируете. Кажется, что тесты выполняются на модуле, а не на самом файле с кодом src. Не загружайте модуль для тестирования, только файл, который вы хотите для покрытия кода.   -  person Peter    schedule 03.10.2017
comment
@Peter Да, извини, что не обновил. Загрузил модуль. Когда я пошел и. \ Конкретный скрипт, покрытие кода сработало. Есть ли что-нибудь вокруг этого? Это для dbatools. У нас есть файл для каждого командлета, и я хотел бы создать отчет о полном коде для всего.   -  person Justin Dearing    schedule 04.10.2017


Ответы (1)


Просто психическая отладка:

Ваш модуль установлен, и ваш тест выполняется с модулем вместо файла: '. \ Functions \ New-DbaSqlConnectionStringBuilder.ps1'.

person Peter    schedule 11.10.2017