登录
首页 » C# » 单元测试的艺术(第2版)随书示例源码

单元测试的艺术(第2版)随书示例源码

于 2019-02-22 发布
0 316
下载积分: 1 下载次数: 0

代码说明:

所有程序员都知道应该做单元测试,但为什么你们没有做呢?是因为对单元测试不够了解,还是嫌单元测试麻烦,抑或认为单元测试的投入产出比太低?不管因为什么,你都应该看看这本书。本书在第1版基础上新增了很多内容,不过仍然会手把手地教你从第一个单元测试开始写起,通过简单的例子让你理解如何编写好维护、易明白和可靠的单元测试。在此基础上,本书自然过渡到一些较为高级的主题,比如模拟对象、存根和隔离框架(Moq、FakeItEasy和Typemock Isolator等),同时涉及测试模式,以及组织、重构代码的技巧,乃至怎么测试“不可测试”的代码。另外,其中还介绍了集成测试和关联数据库的测试技术。本书代码示例虽然是用C#写的,但有关单元测试的技术和思想适合所有使用静态类型语言(如VB.NET、Java、C )的测试人员,以及测试驱动开发人员学习借鉴

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • EzReportBuild 2.0报表组件源码和demo及说明
    2.0版本添加了多报表页功能,每份报表可设置多页,每页可设置不同的纸张大小、数据表、页面规则等,并可对报表页次序即时调整,同时,优化了显示,报表显示更流畅。EzReportBuild 2.0报表组件,可以完成报表设计、预览、打印等功能,提供接口函数,可以将设计、预览等嵌入到自定的winform中调用,使用简单,调用灵活。在你的工程项目里,新建一个窗体,添加按钮,使用:// 单独打开报表编辑器        private void button1_Click(object sender, EventArgs e)        {            _Interface.independent_DesignForm();    }打开设计器设计报表,保存报表后可去掉按钮,该工程项目生成的报表,别的应用不能打开查看。如需复杂数据报表,可先生成一个临时数据库表,然后引入报表系统,由于报表数据为按行读取,所以只要能够设计出数据库各字段和内容,就能够生成相应的报表。打印规则为“内容区域”栏目无论所在位置,紧跟页头栏,所以适当调整“页头区域”、“页脚区域”位置,保证按需求输出。制作每页多行数据报表,“内容区域”为自动计算填充“页头区域”、“页脚区域”之间的空间,应适当调整“内容区域”栏目和页头页脚之间的空间,达到最佳打印效果。如需在表格内添加空行,可在生成的报表数据库表中添加空记录即可。 注意:使用时,将fontawesome-webfont.ttf字体文件与exe文件放置在一起,使用Access数据库时,注意路径,如没有安装AccessDatabaseEngine.exe,可在微软网站下载,或在本压缩文件的soft文件夹中安装。 更新关注:https://www.cnblogs.com/qiaoke/p/10365440.html 设计器截图      预览截图 嵌入程序截图 多种纸张同时预览using System;using System.Drawing;using System.Windows.Forms;namespace Demo_1{ public partial class Form1 : Form { RBuild_Interface _Interface = new RBuild_Interface(); // 新建接口 RBuild_Preview rpb = new RBuild_Preview(); // 预览窗口对象 public Form1() { InitializeComponent(); } // 单独打开报表编辑器 private void button1_Click(object sender, EventArgs e) { _Interface.independent_DesignForm(); } // 单独打开报表预览 private void button2_Click(object sender, EventArgs e) { _Interface.independent_PreviewForm(@"测试报表1.rpt", 2, "", "", "", "地址库.mdb"); } private void button3_Click(object sender, EventArgs e) { // 按钮可以使用 b1.Enabled = true; b2.Enabled = true; b3.Enabled = true; b4.Enabled = true; b5.Enabled = true; b6.Enabled = true; b7.Enabled = true; b8.Enabled = true; _Interface.embedded_PreviewForm(rpb, panel1, @"测试报表1.rpt", 2, "", "", "", "地址库.mdb", true); } private void b1_Click(object sender, EventArgs e) { _Interface.preview_FirstPage(rpb); } private void b2_Click(object sender, EventArgs e) { _Interface.preview_PreviousPage(rpb); } private void b3_Click(object sender, EventArgs e) { _Interface.preview_NextPage(rpb); } private void b4_Click(object sender, EventArgs e) { _Interface.preview_LastPage(rpb); } private void b5_Click(object sender, EventArgs e) { _Interface.preview_Search(new Point(200,200)); } private void b6_Click(object sender, EventArgs e) { _Interface.zoom_Menu(rpb,new Point(300,200)); } private void b7_Click(object sender, EventArgs e) { _Interface.print_Page(rpb); } private void b8_Click(object sender, EventArgs e) { int _now, _tol; _now = _Interface.get_NowPage(rpb); _tol = _Interface.get_TotalPage(); MessageBox.Show("当前页:" _now "--- 总页数:" _tol); } }}
    2019-01-19下载
    积分:1
  • C#控制雷赛驱动器单轴点位运动
    C#控制雷赛驱动器单轴点位运动
    2020-11-29下载
    积分:1
  • WPF 医院病历信息管理系统源码下载(sqlite数据库)
    WPF 医院病历信息管理系统源码下载(sqlite数据库)
    2015-05-01下载
    积分:1
  • C# 下载图片示例
    using System;using System.Web;public class DownImg : IHttpHandler { //图片下载功能 public void ProcessRequest(HttpContext context) { System.Net.WebResponse response = null; System.IO.Stream stream = null; string path = context.Request.Url.Query.Split(new string[] { "coverimg=" }, StringSplitOptions.RemoveEmptyEntries)[1]; System.Net.HttpWebRequest request = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(path); response = request.GetResponse(); stream = response.GetResponseStream(); System.IO.MemoryStream memStream = Txooo.Mobile.HttpTools.CloneStream(stream); byte[] bytes = new byte[memStream.Length]; memStream.Read(bytes, 0, bytes.Length); // 设置当前流的位置为流的开始 memStream.Seek(0, System.IO.SeekOrigin.Begin); context.Response.ContentType = "application/octet-stream"; //通知浏览器下载文件而不是打开 string fileName = DateTime.Now.Ticks.ToString() ".jpg"; context.Response.AddHeader("Content-Disposition", "attachment; filename=" fileName); context.Response.BinaryWrite(bytes); context.Response.Flush(); } public bool IsReusable { get { return false; } }}
    2014-05-29下载
    积分:1
  • 四则运算计算器
    使用栈的方式进行四则运算计算
    2014-04-21下载
    积分:1
  • 微信公众账号开发 实例源码下载(含SDK)
    基于.net的轻量级的微信SDK,使用.net Framework4.0的Dynamic特性,一个将xml字符串自动转换成Dynamic Object的DynamicXml.cs类,还有一个将json字符串自动转换成Dynamic Object的DynamicJson.cs类实现无Entity的SDK;代码结构完全符合官方平台的布局,一目了然
    2014-07-28下载
    积分:1
  • asp.net 微信支付服务器端代码(完整示例源码下载)
    如果用的是mvc 则将 notify.cs中的         public Page page {get;set;}        public Notify(Page page)        {            this.page = page;        } 把Page 改成 HttpContextBase即可
    2015-05-07下载
    积分:1
  • socket服务器与客户端数据分析事例1.6
    socket服务器与客户端数据分析事例1.6
    2014-09-20下载
    积分:1
  • 各种算法文档资料
    算法学习文档,贪心算法倍增算法位运算递归
    2020-12-09下载
    积分:1
  • listView实现导入,导出记事本文件
    listView实现导入,导出记事本文件
    2015-03-28下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载