博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
DotNetCore跨平台~功能测试TestHost的使用
阅读量:6891 次
发布时间:2019-06-27

本文共 1146 字,大约阅读时间需要 3 分钟。

之前写了关于自动化测试的相关文章,包括gitlab,unittest,jenkins pipeline等,基于都是功能点的测试,当我们的框架或者业务修改之后,需要走一篇自动化测试,以此来保证我们的修改过的功能是正确的,而今天主要说一下流程测试,从api网站的入口,从一个请求开始到结束这个过程,我们可以通过TestHost来完成!

一个完整的流程化测试需要经过以下几个步骤:

  1. 建立xunit项目
  2. 引用需要测试的api项目
  3. 添加WebFixture拦截器,注意其中的startup是指api项目的,建立测试使用的TestServer和HttpClient
  4. 在xunit里使用HttpClient即可

一 建立xunit项目

二 引用需要测试的api项目

三 添加WebFixture拦截器,注意其中的startup是指api项目的,建立测试使用的TestServer和HttpClient

///     /// Web拦截器    ///     public class WebFixture    {        public TestServer Server;        public HttpClient Client;        public WebFixture()        {            var hostBuilder = new WebHostBuilder();            var Server = new TestServer(hostBuilder.UseStartup
()); this.Client = Server.CreateClient(); } }

四 在xunit里使用HttpClient即可

[Fact]        public void TestLindDotNetCoreRepositoryTest()        {            var msg = _webFixture.Client.GetAsync("/dapper")                 .Result                 .Content                 .ReadAsStringAsync()                 .Result;            Assert.NotNull(msg);        }

这样,一个流程化测试的例子就完成了,还是比较简单的!

关键在于找到这种测试的方法!

转载于:https://www.cnblogs.com/lori/p/8116627.html

你可能感兴趣的文章
线程的状态
查看>>
IDEA小插件之快速修改Maven多模块的工程版本
查看>>
Programming C#.Classes and Objects.成员方法
查看>>
《大道至简》读后感03
查看>>
分布式系统---幂等性设计
查看>>
把“数字的字符串”转换成“整数”时遇到的小麻烦
查看>>
消耗系统内存
查看>>
mysql-connector-c++ 编译安装
查看>>
A - Space Elevator(动态规划专项)
查看>>
mysql使用存储过程和event定期删除
查看>>
基于python3+opencv3图像基础IO操作
查看>>
(旧)子数涵数·PS ——翻页效果
查看>>
Day2 Excel与数据处理之定位条件、选择性粘贴及查找功能
查看>>
爬豆瓣电影名
查看>>
OpenCV与QT联合编译 分类: Eye_Detection ...
查看>>
ssh服务
查看>>
Eclipse的基本使用
查看>>
构建之法 第五章 团队和流程
查看>>
(转)如何在eclipse的配置文件里指定jdk路径
查看>>
如何将atom侧边栏显示在右侧
查看>>