如何在 ASP.NET Core 中使用 mysql 进行单元测试、actionresult

彼得

如何使用mysql的操作结果测试此代码?

    [HttpPost]
    public ActionResult SomeAction(string qrcode)
    {
        string connectionString = @"Server=localhost;Database=aspkladovaya;Uid=root;Pwd=qwerty98123;";
        string result = "";

        try
        {
            using (MySqlConnection sqlCon = new MySqlConnection(connectionString))
            {
                try
                {
                    int userID = Convert.ToInt32(qrcode);
                    sqlCon.Open();

                    MySqlDataAdapter sqlDa = new MySqlDataAdapter("UserFindByID", sqlCon);
                    sqlDa.SelectCommand.Parameters.AddWithValue("_qruserid", userID);
                    sqlDa.SelectCommand.CommandType = CommandType.StoredProcedure;

                    DataTable dtbl = new DataTable();
                    sqlDa.Fill(dtbl);

                    for (int i = 0; i < 3; i++)
                    {
                        if (qrcode == dtbl.Rows[i][1].ToString())
                        {
                            user.QrUserId = qrcode;
                            result = dtbl.Rows[i][3].ToString();
                        }
                        else
                        {
                            result = error;
                        }
                    }
                }
                catch
                {
                }
            }
        }
        catch
        {
        }

        return Json(result);
    }

我试图写一些东西,但没有任何效果

    [TestMethod]
    public void TestMethod2()
    {
        HomeController homeController = new HomeController();
        ActionResult result = homeController.SomeAction("12");
        Assert.IsInstanceOfType(result, typeof(ViewResult));
    }

我收到这样的错误

Assert.IsInstanceOfType 失败。预期类型:<Microsoft.AspNetCore.Mvc.RedirectToRouteResult>。实际类型:<Microsoft.AspNetCore.Mvc.JsonResult>

网步

您的测试方法应如下所示。

 [TestMethod]
    public void TestMethod2()
    {
        HomeController homeController = new HomeController();
        ActionResult result = homeController.SomeAction("12");
        Assert.IsInstanceOfType(result, typeof(JsonResult));
    }

您的方法正在返回 JsonResult,您正在尝试检查它是否为 ViewResult。这就是问题的原因。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在ASP.NET Core中使用Bootstrap 4

如何在ASP.NET Core中使用ILogger进行单元测试

如何在ASP.NET Core中使用npm

如何在ASP.NET Core中使用区域

如何在ASP.NET Core中使用SqlClient?

如何在ASP.NET Core中使用jquery

如何使用ActionResult <T>进行单元测试?

如何在ASP.NET Core应用中使用HttpClient

如何对ASP.NET Core Web应用程序(.Net Framework)进行单元测试?

如何在ASP.NET Core 1.1中对使用HttpContext的MVC控制器进行单元测试

如何在Visual Studio测试中使用ASP.NET Core环境变量

.NET Core如何进行单元测试服务?

如何在ASP.NET Core中对ViewBag进行单元测试?

如何在ASP.NET Core中对Web API的动作过滤器属性进行单元测试?

如何在ASP.NET Core项目中使用MStest测试Ok()结果

在内存数据库提供程序中使用EF core进行asp.net core应用程序的单元测试的优势

如何使用依赖注入.net Core 2进行单元测试

如何在ActionResult ASP.NET Core 2.1中使用空合并运算符

如何在ASP.NET Core的X单元单元测试中模拟AutoMapper IConfigurationProvider

如何在ASP.NET Core MVC中对RazorViewEngineOptions进行单元测试?

如何使用Moq对.NET Core 3.1中的LoggerMessage.Define()进行单元测试?

如何对返回匿名对象的ASP.NET Core MVC控制器进行单元测试?

如何在 ASP.NET Core 2 MVC 中使用依赖注入设置单元可测试模型验证?

如何在 .NET Core 3.1 中对使用 ExecuteSqlRawAsync 调用存储过程的函数进行单元测试?

如何在 ASP.Net Core 3 中使用 UseNodeModules?

如何在 Asp.Net Core 中使用 Ninject?

如何在 Azure DevOps 管道中使用 ASP.NET Core 依赖项运行 XUnit 测试?

如何在 ASP.NET Core 中使用异步“ForEach”?

如何在 ASP.NET Core 中使用 API?