Проблема: как выполнить модульное тестирование хранимой процедуры и функции?
Я видел разные посты об этом и до сих пор не знаю, какой путь правильный.
То, что я пытался: я создал проект в Visual Studio для загрузки схемы базы данных (содержащей мою хранимую процедуру и связанную функцию). Оттуда я создаю другой проект с модульным тестом. Однако, к сожалению, я нахожу это тривиальным и немного бесполезным.
Моя хранимая процедура не имеет большого значения, но я все же хотел бы знать, есть ли способ ее модульного тестирования правильно.
Хранимая процедура :
CREATE PROCEDURE update_player
@Username NVARCHAR (250),
@Luck INT,
@DiceNumber INT
AS
UPDATE [dbo].[Player]
SET [Coins] = dbo.CalculatePlayerCoins(@Luck, @DiceNumber)
WHERE [Username] = @Username
GO
Моя функция:
CREATE FUNCTION CalculatePlayerCoins
(@Luck INT, @DiceNumber INT)
RETURNS INT
AS
BEGIN
DECLARE @ret INT;
SELECT
@ret = @Luck * @DiceNumber * (SELECT Value FROM getRandomValue)
IF (@ret IS NULL)
SET @ret = 0;
RETURN @ret;
END;
getRandomValue
- это представление, которое возвращает случайное значение.
Я хотел бы использовать xUnit для проверки этого, если возможный. В противном случае, если бы вы могли указать мне правильное направление, было бы здорово. Заранее спасибо!