BDD实战篇 - 在.NET Core下安装Specflow
这是<如何用ABP框架快速完成项目 >系列中的一篇文章。
让我们动手起来吧!先在.NET Core下安装Specflow!
- 是英文的,没有中文
- 是在线安装的,没有离线安装。
- 有坑。我已经踩过的坑希望你不要再掉进去了
- 先安装VS 2017和.NET 4.7.1
- 安装VS 2017扩展,官网教程是在线安装,如果需要离线安装,可以把扩展下载到本地,然后复制到没有连接外网的机器上手动安装。
- SpecRun.SpecFlow-3.0.0
- SpecFlow.xUnit 和 SpecFlow.MsTest 和 SpecFlow.NUnit 三者中其中一个,这里推荐SpecFlow.xUnit
- 离线安装nuget packages有以下几个注意要点:
- 添加了本地离线nuget安装源之后要把联网安装源删除掉。
- 下载nuget package安装包的时候记得要把依赖也下载了,2018-12-31版本的abp .NET Core版本需要把如下依赖都要下载下来:
一定要严格按照上图下载各个nupkg,一个都不能少,否则会报错。我已经踩过的坑希望你不要再掉进去了。配置,在测试目录下按照下图新增一个specflow.json即可
代码自动生成配置,- 安装SpecFlow.Tools.MsBuild.Generation nuget package
- 按照官网教程去掉.csproj里面的代码:(注意!这一步是每新加一个.feature文件都需要做这一步!!!)

- 又一个坑来了,不要理会 https://specflow.org/documentation/Generate-Tests-from-MsBuild/ 这篇文章里的东西。
- 还有一个坑:必须在.csproj严格指定如下版本,初始化的ABP Test项目所需package应该如下,不要多也不要少,多了要删掉,特别是Gherkin这个package. 不然会报错,而且这个错Specflow还没有修复,issue状态还是open.
最后一步啦,测试一下是否一切OK- 新建.feature文件
- 操作一遍6.2步骤!不要鼠标右键修改.feature文件的自定义生成属性!!!
- 写一个BDD test case
- 自动生成测试代码
- Build后去test explorer看看能否跑新增的Test case
BDD实战篇 - 在.NET Core下安装Specflow的更多相关文章
- BDD实战篇 - .NET Core里跑Specflow - 可以跑集成测试和单元测试
这是<如何用ABP框架快速完成项目 >系列中和DevOps系列文章其中一篇文章. BDD很赞!比TDD先进很多,能够大大提高编码效率. 上一篇文章说了如何在.NET Core里安装 ...
- Asp.Net Core 2.0 项目实战(8)Core下缓存操作、序列化操作、JSON操作等Helper集合类
本文目录 1. 前沿 2.CacheHelper基于Microsoft.Extensions.Caching.Memory封装 3.XmlHelper快速操作xml文档 4.Serializatio ...
- (1)MySQL进阶篇在linux环境下安装
1.概述 对于mysql二进制安装,优点是可以安装到任何路径下,灵活性好,一台服务器可以安装多个mysql.缺点是已经编译过,性能不如源码编译得好,不能灵活定制编译参数.如果用户即不想安装最简单却不够 ...
- 项目部署篇之二——linux下安装jdk1.8
1.下载jdk1.8 百度云下载后,直接通过xftp拖到你想放的目录下就行了,实在方便 链接:https://pan.baidu.com/s/1hQl0_3owT776lRO9mHSbXA 提取码:2 ...
- Python开发【初始篇】:Linux下安装Python3
Linux系统默认自带python2.6的版本,这个版本被系统很多程序所依赖,所以建议不要轻易删除,除非你能解决其他程序的依赖问题.如果使用最新的Python3需要进行编译安装源码包,这样就对系统默认 ...
- 在 windows 环境下安装 redislive
这是一篇在 windows 环境下安装 redislive 的教程! 项目地址:https://github.com/nkrode/RedisLive 配置文档:http://www.nkrode.c ...
- Mac OS X 下安装使用 Docker (2017年7月)
两年前的一篇 Mac OS X 下安装使用 Docker 安装时还是用的 boot2docker, 如今进化到了在 Mac OS X 下用 Docker Toolbox, 而且命令也由 boot2do ...
- Centos 7环境下安装配置Hadoop 3.0 Beta1简记
前言 由于以前已经写过一篇Centos 7环境下安装配置2.8的随笔,因此这篇写得精简些,只挑选一些重要环节记录一下. 安装环境为:两台主机均为Centos 7.*操作系统,两台机器配置分别为: 主机 ...
- ubuntu系统下安装pyspider:搭建pyspider服务器新手教程
首先感谢“巧克力味腺嘌呤”的博客和Debian 8.1 安装配置 pyspider 爬虫,本人根据他们的教程在ubuntu系统中进行了实际操作,发现有一些不同,也出现了很多错误,因此做此教程,为新手服 ...
随机推荐
- Mybatis框架七:三种方式整合Spring
需要的jar包: 新建lib文件夹放入jar包,Build Path-->Add To Build Path之后: 原始Dao开发示例: src下:新建核心配置文件sqlMapConfig.xm ...
- FileZilla 使用笔记
FileZilla 使用了三年了,一些功能其实还没有主动去发现,这次接着项目忙完的空闲时间整理一下 Tips,提高工作效率,方便以后查阅. 一.好用的功能 1.Site Manager - 站点管理器 ...
- pocketsphinx 移植问题解决备案
一 编译问题: 1 _continuous: error while loading shared libraries: libpocketsphinx.so.3: cannot open share ...
- JDK9新特性实战:流关闭新姿势
做Java开发的都知道,每个资源的打开都需要对应的关闭操作,不然就会使资源一直占用而造成资源浪费,从而降低系统性能. 关于资源的关闭操作,从JDK7-JDK9有了不少的提升及简化. JDK6 在JDK ...
- iOS逆向开发(2):获取APP的类声明 | class-dump | dumpdecrypted
之前介绍了怎么操作越狱的iOS设备(以下简称为手机),但简单操作手机并不是目标,小程的目标是手机上特定的APP,比如微信.淘宝.QQ音乐等等,因为小程可以从这些APP上拿到一些有用的信息或资源--比如 ...
- Nginx下关于缓存控制字段cache-control的配置说明 - 运维小结
HTTP协议的Cache -Control指定请求和响应遵循的缓存机制.在请求消息或响应消息中设置 Cache-Control并不会影响另一个消息处理过程中的缓存处理过程.请求时的缓存指令包括: no ...
- 视频人脸检测——Dlib版(六)
往期目录 视频人脸检测--Dlib版(六) OpenCV添加中文(五) 图片人脸检测--Dlib版(四) 视频人脸检测--OpenCV版(三) 图片人脸检测--OpenCV版(二) OpenCV环境搭 ...
- keepalived实现mycat高可用问题排查;道路坎坷,布满荆棘,定让你大吃一惊!
前言 开心一刻 医院里,一母亲带着小女孩打针.小女孩:“妈妈我不想打针,疼!”妈妈:“宝贝儿听话,这里这么多护士阿姨,咱们找个打针不疼的.”小女孩:“那哪个阿姨打针不疼呢?”妈妈:“妈妈也不知道,咱们 ...
- SpringBoot(5) SpringBoot个性化启动
1.在类路径下增加一个banner.txt,里面是启动要输出的信息 自定义banner在线生成工具: http://www.bootschool.net/ascii _ _ _ _ __ | | __ ...
- 02_python是一种什么语言?
python是一种什么语言? 1.低级语言与高级语言 最初的计算机程序都是用0和1的序列表示的,程序员直接使用的是机器指令,无需翻译,从纸带打孔输入即可执行得到结果.后来为了方便记忆,就将用0.1序列 ...