一. 导读 为什么要编写自动化测试程序(Automated Tests)? 可以频繁的进行测试 可以在任何时间进行测试,也可以按计划定时进行,例如:可以在半夜进行自动测试. 肯定比人工测试要快. 可以更快速的发现错误. 基本上是非常可靠的. 测试代码与生产代码紧密结合. 使得开发团队更具有幸福感! 自动化测试的分类: 纵轴表示测试的深度,也就是说测试的细致程度. 横轴则表示测试的覆盖程度. Unit Test 单元测试, 它可以测试一个类,或者一个类的某个功能,它具有很好的深度,但是对整个应用来…
导读 为什么要编写自动化测试程序(Automated Tests)? 可以频繁的进行测试 可以在任何时间进行测试,也可以按计划定时进行,例如:可以在半夜进行自动测试. 肯定比人工测试要快. 可以更快速的发现错误. 基本上是非常可靠的. 测试代码与生产代码紧密结合. 使得开发团队更具有幸福感! 自动化测试的分类: 纵轴表示测试的深度,也就是说测试的细致程度. 横轴则表示测试的覆盖程度. Unit Test 单元测试, 它可以测试一个类,或者一个类的某个功能,它具有很好的深度,但是对整个应用来说它不…
第一部分: http://www.cnblogs.com/cgzl/p/8283610.html 下面有一点点内容是重叠的.... String Assert 测试string是否相等: [Fact] public void CalculateFullName() { var p = new Patient { FirstName = "Nick", LastName = "Carter" }; Assert.Equal("Nick Carter"…
第1部分: http://www.cnblogs.com/cgzl/p/8283610.html 第2部分: http://www.cnblogs.com/cgzl/p/8287588.html 请使用这个项目作为练习的开始: https://pan.baidu.com/s/1ggcGkGb 测试的分组 打开Game.Tests里面的BossEnemyShould.cs, 为HaveCorrectPower方法添加一个Trait属性标签: [Fact] [Trait("Category"…
第1部分: http://www.cnblogs.com/cgzl/p/8283610.html 第2部分: http://www.cnblogs.com/cgzl/p/8287588.html 第3部分: http://www.cnblogs.com/cgzl/p/8438019.html 请使用这个项目的代码: https://pan.baidu.com/s/1i7d8z2H 数据驱动的测试 打开PlayerCharacterShould.cs 添加几个Fact测试方法: [Fact] pu…
第一部分: http://www.cnblogs.com/cgzl/p/8283610.html Assert Assert做什么?Assert基于代码的返回值.对象的最终状态.事件是否发生等情况来评估测试的结果.Assert的结果可能是Pass或者Fail.如果所有的asserts都pass了,那么整个测试就pass了:如果有任何assert fail了,那么测试就fail了. xUnit提供了以下类型的Assert: boolean:True/False String:相等/不等,是否为空,…
第一部分: http://www.cnblogs.com/cgzl/p/8283610.html 下面有一点点内容是重叠的.... String Assert 测试string是否相等: [Fact] public void CalculateFullName() { var p = new Patient { FirstName = "Nick", LastName = "Carter" }; Assert.Equal("Nick Carter"…
  第1部分: http://www.cnblogs.com/cgzl/p/8283610.html 第2部分: http://www.cnblogs.com/cgzl/p/8287588.html 第3部分: http://www.cnblogs.com/cgzl/p/8438019.html 请使用这个项目的代码: https://pan.baidu.com/s/1i7d8z2H…
测试对于软件来说,是保证其质量的一个重要过程,而测试又分为很多种,单元测试.集成测试.系统测试.压力测试等等,不同的测试的测试粒度和测试目标也不同,如单元测试关注每一行代码,集成测试关注的是多个模块是否能正常的协同工作. 当我们在衡量代码好坏时,其中一点就是这些代码是否进行了单元测试,测试的质量.代码覆盖率怎么样?本文将从以下几个方面介绍.Net Core中的单元测试: 单元测试简介 .Net Core中的单元测试框架 使用xUnit.Net对.Net Core应用进行单元测试 创建xUnit.…
目标:完成windows上开发的dotnet core程序部署至linux服务器上(Ubuntu 14.04) windows上开发dotnet core很简单,安装好VS2017,建立相关类型的项目进行开发即可. Linux服务器中需要做以下几个工作: 1.安装dotnet core, 运行dotnet程序必备条件. 2.安装supervisor守护进程,可以帮助你自动启动站点. 3.安装nginx做代理 1. 安装dotnet core #依次执行下面的命令,安装的版本有问题的话,按照错误提…
最近一个项目中,为App开发后台接口,技术选型为最新 .net core版本,使用.net core开发web api接口过程中,为了方便app团队成员直接在线调用接口,找了公网上的一台服务器做为app后台接口的测试服务器,并做了域名解析.服务器配置为Windows Server 2008 R2企业版,刚购买时,云服务器厂商只是安装了IIS的基本功能.所以接下来咱们基于Windows Server 2008 R2 服务器开始今天的教程. 第一:首先在IIS上安装管理服务,配置好IIS7 允许使用…
前言 ASP.NET core转眼都发布半月多了,社区最近也是非常活跃,虽然最近从事python工作,但也一直对.NET念念不忘,看过了园区大神们搭建的Asp.net core项目之后,自己也是跃跃欲试,准备搞一下ASP.NET Core mvc的创建和部署,于是便有了这篇文章,希望能够帮助到你. 环境准备 这是我的开发环境,使用的nginx是nginx 1.6.3 直接yum install,然后需要安装dotnet环境,可以参照官网教程https://www.microsoft.com/ne…
NET Core MVC 在linux上的创建及发布 前言 ASP.NET core转眼都发布半月多了,社区最近也是非常活跃,虽然最近从事python工作,但也一直对.NET念念不忘,看过了园区大神们搭建的Asp.net core项目之后,自己也是跃跃欲试,准备搞一下ASP.NET Core mvc的创建和部署,于是便有了这篇文章,希望能够帮助到你. 环境准备 这是我的开发环境,使用的nginx是nginx 1.6.3 直接yum install,然后需要安装dotnet环境,可以参照官网教程h…
单元测试能够帮助开发人员确保所开发的模块.类以及类中的方法等的正确性,在项目开发过程中,及时进行单元测试能够避免不必要的BUG以及提高测试效率. 在本文中,我们会分别来学习如何使用MSTest.xUnit以及NUnit这些流行的.NET测试框架来对.NET Core项目进行测试. 一.项目创建 首先,创建一个需要测试的项目.在Visual Studio中创建一个.NET Core 类库项目,名为Calc,项目创建成功后,删除自带的Class1.cs,添加一个类Calculator. Calcul…
1. 前言 近两年来,很多前端的同学都开始将 VSCode 作为前端主力开发工具,其丰富的扩展给程序开发尤其是前端开发带来了很多便利,但是作为微软主力语言的 .NET,却由于有宇宙第一编辑器 Visual Studio存在,很少有看到有后端同学使用,笔者自己在 VSCode 刚出来时就折腾过将主力开发工具迁移至 VSCode,这样可以跨平台做开发(实际是当时想尝试在Mac上做开发),但当时由于插件还不完善,折腾过程也比较坑,遂放弃,继续拥抱宇宙第一编辑器. 近日有点时间,再次折腾VSCode,惊…
上次介绍了Azure Application Insights,实现了.net core程序的监控功能.这次让我们来看看Azure DevOps Pipeline功能.Azure DevOps Pipeline 是Azure DevOps里面的一个组件,对于12个月试用账号同样永久免费. 持续集成CI 持续集成指的是,频繁地(一天多次)将代码集成到主干. 它的好处主要有两个. (1)快速发现错误.每完成一点更新,就集成到主干,可以快速发现错误,定位错误也比较容易. (2)防止分支大幅偏离主干.如…
上一次我们讲了使用Azure DevOps Pipeline实现.Net Core程序的CI.这次我们来演示下如何使用Azure DevOps实现.Net Core程序的CD. 实现本次目标我们除了Azure DevOps外还需要: 一台安装了Docker的主机 一个 Docker Hub 账号 上一次我们的CI实现了: 发布>编译>单元测试 这次我们要实现剩下的几个步骤: 生成镜像>推送镜像>部署 创建Docker镜像仓库 我们生成的镜像需要有个存放的地方.各大云厂商其实都有这种…
在可移植方面.NET Core应用程序分为两种,Portable application(便捷,需要目标机器安装.NET Core Runtime)和Self-contained application(独立的,又名自宿主.目标机器不需要.NET Core Runtime ), 具体可参考文档:https://docs.microsoft.com/zh-cn/dotnet/articles/core/app-types   本次是将Portable App发布到Ubuntu 16.04上运行.发…
原文翻译:Publish to a Linux Production Environment 作者:Sourabh Shirhatti 在这篇文章里我们将介绍如何在 Ubuntu 14.04 Server上部署ASP.NET Core应用程序.我们将把ASP.NET Core应用程序放到一个反向代理服务器的后面,由代理服务器把请求转交给我们的Kestrel服务器.除此之外,我们还将保证我们的web应用程序作为一个守护进程来进行启动.我们需要配置一个进程管理工具来帮助我们在程序崩溃时恢复程序,以保…
最近打算做一个公司的代码走查工具,思前想后觉得正好可以当作一个Core的实践机会,于是上官网看了下资料,顺便作了一下笔记方便以后查阅. 注1:这里的Core程序部署指的是.Net Core而非Asp.Net Core. 注2:本人已跟随官方文档更新. 一,.Net Core的部署形式 Core的应用程序部署有两种形式: 1,Framework-dependent deployment([Core Framework]依赖式部署)(FDD) 2,Self-contained deployment(…
Jenkins部分 首先,我们要有个Jenkins咯,下载链接:https://jenkins.io/download/ 我们安装官网教程安装好jenkins,安装教程略.... 嗯?不是说好手把手么?你妹的. 好好好,我们还是来手把手教程好了. 首先安装JDK8 添加安装源之后直接apt-get install就好,下面是ubuntu的安装命令,其他系统自己玩一下就好. sudo add-apt-repository ppa:webupd8team/java sudo apt-get upda…
在之前一篇博客<以Windows服务方式运行ASP.NET Core程序>中我讲述了如何把ASP.NET Core程序作为Windows服务运行的方法,而今,我们又遇到了新的问题,那就是:我们的控制台程序,也就是普通的.NET Core程序(而不是ASP.NET Core程序)如何以服务的方式运行呢? 这个问题我们在.NET Core之前早就遇到过,那是是.NET Framework的时代(其实距今也没多远啦),我们是用一个第三方的组件——Topshelf,来解决这个问题的,Topshelf的…
原文:Running async tasks on app startup in ASP.NET Core (Part 3) 作者:Andrew Lock 译者:Lamond Lu 之前我写了两篇有关在ASP.NET Core中运行异步任务的博文,本篇博文是对之前两篇博文中演示示例和实现方法的简短跟进. 你可以通过以下链接查看之前的博文. 如何在ASP.NET Core程序启动时运行异步任务(1) 如何在ASP.NET Core程序启动时运行异步任务(2) 启动任务的例子 在之前博客中,我收到的…
确认第二步中的软件已安装完成 lrzsz文件上传下载软件 zip与unzip压缩包软件 net core 相关软件 确认上述软件安装完成之后,开始部署程序 创建部署文件夹 我的习惯是在usr文件夹下新建publish文件夹,然后在publish文件夹中各创建各个程序对应的文件夹,在文件夹下back和front分别来存放前端和后端部署程序 由当前所在文件夹,进入usr文件夹 查看当前所在文件夹  进入usr文件夹 : cd /usr 创建publish文件夹,并查看文件夹是否创建成功 创建publ…
上一篇文章中我给大家讲述了五种部署ASP.NET Core网站的方法,其中有一种方式是通过Windows服务来进行部署,这样既可以做到开启自启动,又不会因为iis的反向代理而损失部分性能.但是美中不足的是需要借助第三方软件nssm来进行,那么有没有更好并且优雅的方式来进行ASP.NET Core网站的Windows服务方式部署呢?答案是肯定的! 作者:依乐祝 原文链接:https://www.cnblogs.com/yilezhu/p/10380887.html 今天这篇文章我会利用番茄工作法来…
运行环境 照例,先亮环境:软件的话我这里假设你已经批准好了.net core 运行环境,未配置可以看我的这篇[linux(centos)搭建.net core 运行环境] 腾讯云 centos:7.2 cpu:1核 2G内存 1M带宽 docker:18.06.1-ce 安装docker 安装其实很简单,就不重复说了,请查看纯洁大神这篇文章 准备你的.net core web 程序 我这里新建一个空的.net core web程序用以演示,实际部署时是你的项目 创建web项目(我自己使用vs20…
运行环境 照例,先亮底 centos:7.2 cpu:1核 2G内存 1M带宽 辅助工具:xshell xftp 搭建.net core运行环境 .net core 的运行环境我单独写了一篇,请看我的这篇文章[linux(centos)搭建.net core 运行环境] 准备你的.net core web 程序 我这里新建一个空的.net core web程序用以演示,实际部署时是你的项目 创建web项目(我自己使用vs2017 ,如使用vscode的需要自己安装windows的SDK和使用do…
有时候,我们会想知道某台机器上面跑了什么程序. 当程序部署到IIS上面的时候,我们只需要打开IIS一看,就知道有多少个站点在运行了. 当我们在CentOS上面部署的时候,就没那么的直观了. 当然对于熟悉Linux命令的小伙伴还是很容易的. 下面就来看看如何在CentOS上面查看对应的信息. 说明,本文的所有环境都是基于Jexus的. 查看的命令如下 ps -ef | grep AppHost 输出结果 UID PID PPID C STIME TTY TIME CMD root 12651 51…
从头认识一下docker-附带asp.net core程序的docker化部署 简介 在计算机技术日新月异的今天, Docker 在国内发展的如火如荼,特别是在一线互联网公司, Docker 的使用是十分普遍的. 编写此套教程,来带大家去了解并熟练运用 docker ,祝愿各位读者朋友们学完此套教程后,在未来企业面试中能够多一项加分的筹码,能够帮助到大家,我觉得就很值了. docker 是什么 既然说了这么多, docker 到底是个什么东西呢? 我们在理解 docker 之前,首先我们得先区分…
一.什么是SSL? 1.概念: SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议.TLS与SSL在传输层对网络连接进行加密.SSL为Netscape所研发,用以保障在Internet上数据传输之安全,利用数据加密(Encryption)技术,可确保数据在网络上之传输过程中不会被截取及窃听.一般通用之规格为40 bit之安全标准,美国则已推出128 bit之…