У меня есть похожие методы на бизнес-уровне. Я новичок в модульном тестировании и иногда путаюсь. Для идеи, можете ли вы предложить, что будет лучшим подходом для тестирования этого метода
поведение? Я использую C # NUnit и Moq
public int? AddNewCatRetID(string categoryName)
{
int? categoryID = 0;
Adapter.AddNewBlogCategoryReturnID(categoryName, ref categoryID);
if (categoryID.HasValue)
return categoryID;
return 0;
}
где
Adapter
= Visual Studio 2008, сгенерированный конструктором данных TableAdater
AddDeveloperCategoryReturnID()
= Имя функции, которая использует хранимую процедуру в БД
Добавляет новую запись "Категория" и возвращает автоматически созданный идентификатор. Если он не равен нулю, мы берем этот результат для дальнейшей обработки.
Я знаю, что не следует интересоваться разговором с базой данных, ниже приведена процедура, просто чтобы дать представление о том, что происходит в БД
PROCEDURE [dbo].[AddDeveloperCategoryReturnID]
@NAME NVARCHAR(MAX),
@CATEGORY_ID INT OUTPUT
AS
BEGIN
INSERT INTO [AllTimeGreatProgrammersDateBase].dbo.CATEGORIES(NAME )
VALUES (@NAME );
SET @CATEGORY_ID = SCOPE_IDENTITY();
SELECT @CATEGORY_ID;
END
некоторые проблемы
- как проверить значения, возвращаемые с помощью "ref" из метода
- что вы предпочитаете тестировать, а не тестировать? будет здорово, если сможете перечислить