首页 > 解决方案 > MOQ Excel 文件和编写单元测试

问题描述

我有一个 webapi,其中一个端点是文件上传。我正在使用 moq 和 xunit (.netcore) 来测试我的 api。虽然我可以为其他人编写测试用例,但我不确定如何为我的文件做同样的事情。此上传需要 excel 文件作为输入,通过读取 excel 工作表的列和行进行一些处理,然后将 Jarray 返回到 UI。以下是我用于文件上传的 api 端点:

    [HttpPost("file/upload")]
    public async Task<IActionResult> UploadData(IFormFile file)
    {
        JArray dataArray = new JArray();
        try
        {
            using (ExcelPackage package = new ExcelPackage(file.OpenReadStream()))
            {
                ExcelWorksheet worksheet = package.Workbook.Worksheets[1];

                //Check if excel is empty.
                if (worksheet.Dimension == null)
                {
                    //throw error
                }
                else
                {
                    //Read from excel populate dataArray
                }                   
            }

            return Ok(dataArray);
        }
        catch (Exception e)
        {
            return BadRequest(e.Message);
        }

    }

仅供参考,我正在为我的 excel 使用 EPPlus OfficeOpenXml。

标签: c#moqepplusxunit

解决方案


推荐阅读