首页 > 解决方案 > 单元测试:使用 SQL 查询创建和删除条目

问题描述

我对此很陌生,我正在尝试进行测试,我可以在其中创建和删除模拟数据库中的对象,但我不知道现在从哪里开始或如何创建该模拟数据库并读/写它。

    [Fact]
    public void CreateCommentaar()
    {
        //arrange
        Commentaar commentaar = new Commentaar
        {
            CommentaarId = 0,
            StadId = 0,
            UserId = "testId",
            CommentaarText = "text",
            Tijdstip = DateTime.Now
        };

        string queryString = "INSERT INTO Commentaar(UserId, StadId, CommentaarText, Tijdstip) VALUES("
            + commentaar.CommentaarId + " ,"
            + commentaar.UserId + " ,"
            + commentaar.StadId + " ,"
            + commentaar.CommentaarText + " ,"
            + commentaar.Tijdstip + " ,";

        //act
        //Run Mock sql query

        //assert
        //1 commentaar object should exist in mock DB now

    }

    [Fact]
    public void DeleteCommentaar()
    {
        //arrange
        Commentaar commentaar = new Commentaar
        {
            CommentaarId = 0,
            StadId = 0,
            UserId = "testId",
            CommentaarText = "text",
            Tijdstip = DateTime.Now
        };

        string queryString = "INSERT INTO Commentaar(UserId, StadId, CommentaarText, Tijdstip) VALUES("
            + commentaar.CommentaarId + " ,"
            + commentaar.UserId + " ,"
            + commentaar.StadId + " ,"
            + commentaar.CommentaarText + " ,"
            + commentaar.Tijdstip + " ,";

        //act
        //Run Mock sql query

        //assert
        //1 commentaar object should be deleted
    }

我不确定如何从这里继续。

标签: c#unit-testing

解决方案


这里真的没有什么可以测试的。测试是否将在模拟数据库中插入某些内容将测试您的模拟逻辑。

最好使用集成测试和测试数据库来测试您的 sql 查询是否正确。


推荐阅读