Тесты tSQLt не выполнены с ошибкой «не удалось найти хранимую процедуру« tSQLt.NewTestClass »» - PullRequest
0 голосов
/ 28 июня 2018

Я пытаюсь написать самый простой тест в tSQLt, но получаю ошибку, которую, похоже, не могу исправить.

Это мой тест.

EXEC tSQLt.NewTestClass @ClassName = 'LeadTimeTests';
GO

CREATE PROCEDURE LeadTimeTests.[test Assert equal data is equal]
AS
BEGIN
    DECLARE @actual DATETIME;
    SET @actual = '2004-06-30 23:59:59:998';

    DECLARE @expected DATETIME;
    SET @expected = '2004-06-30 23:59:59:998';
    EXEC tSQLt.AssertEquals @expected, @actual;
END;
GO

И я получаю эту ошибку:

Could not find stored procedure 'tSQLt.NewTestClass'.

А в окне Test Explorer тест не пройден с сообщением:

failure.message: The test class "LeadTimeTests" or 
test name "test Assert equal data is equal" 
could not be found or does not have the tSQLt test schema extended property

Я просто не могу найти решение этой проблемы.

Заранее благодарим за предоставленную помощь.

Ответы [ 2 ]

0 голосов
/ 01 июля 2018

Вам необходимо установить сценарии tSQLt. Смотрите шаг 2

https://tsqlt.org/user-guide/quick-start/#InstallToDevDb

0 голосов
/ 29 июня 2018

Являются ли тесты схемой, имеющей расширенное свойство класса тестирования tSQLt?

Вам необходимо создать схему, которая в основном является тестовым классом:

CREATE SCHEMA [thingy_a_bob]
 go
 EXECUTE sp_addextendedproperty
 @name = N’tSQLt.TestClass’
, @value = 1
 , @level0type = N’SCHEMA’
, @level0name = N’thingy_a_bob’;

Пожалуйста, смотрите это сообщение в блоге: https://the.agilesql.club/2015/09/why-is-my-tsqlt-test-not-running/

...