用c#编写测试用例 [英] test case writing in c#

查看:58
本文介绍了用c#编写测试用例的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

[HttpGet]
        [Authorize]
        public ActionResult Create() //loads the form
        {
            var categoryList = new SelectList(new[] { "Electronics", "Toys","Books","Sporting Goods"}); //defines the categories
            ViewBag.CategoryList = categoryList;
            return View();
        }

我为此编写了一个测试方法..

I write a test method for this..

[TestMethod]

        public void TestCreate() {

            AdvertisementController controller = new AdvertisementController();
            var categoryList = new SelectList(new[] { "Electronics", "Toys", "Books", "Sporting Goods" });
            ViewResult result = controller.Create() as ViewResult;
            Assert.AreEqual(categoryList,result.ViewBag.categoryList);

        }

但是它失败了.我想知道这是怎么回事.这有什么问题??

but it's failed.I want to know what's the case.what wrong of this??

推荐答案

请尝试以下操作

    [TestMethod]
    public void TestCreate() {

        // Setup
        AdvertisementController controller = new AdvertisementController();
        ViewResult result = controller.Create() as ViewResult;

        var expectedCategories = new SelectList(new[] { "Electronics", "Toys", "Books", "Sporting Goods" }).ToList();

        // Execute
        var actualCategories = result.ViewBag.categoryList.ToList();

        // Assert
        Assert.IsNotNull(result); 
        Assert.AreEqual(expectedCategories[0], actualCategories[0]);
        Assert.AreEqual(expectedCategories[1], actualCategories[2]);
        Assert.AreEqual(expectedCategories[2], actualCategories[3]);
        Assert.AreEqual(expectedCategories[3], actualCategories[4]);
        Assert.AreEqual(expectedCategories[4], actualCategories[5]);

    }

基本上,您要验证结果是否等于某个值,并且数组中的每个项目都与预期项目匹配.

Basically in this, you're verifying that result is equal to something, and that EACH item within the array matches the expected item.

注意:我没有在 IDE 中连接它,所以它可能有一些错误.

这篇关于用c#编写测试用例的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆