程序测试

多线程教程:Task

谁说我不能喝 提交于 2020-02-12 00:43:10
一、基本概念 1、Task优势 ThreadPool相比Thread来说具备了很多优势,但是ThreadPool却又存在一些使用上的不方便,例如: ThreadPool不支持线程的取消、完成、失败通知等交互性操作; ThreadPool不支持线程执行的先后次序; .NET Framework 在4.0的时候提供了一个功能更强大的概念:Task。Task在ThreadPool的基础上进行了优化,并提供了更多的API。看下面一个简单的示例: using System; using System.Threading; using System.Threading.Tasks; namespace TaskDemo { class Program { static void Main(string[] args) { // 创建Task Task t = new Task(() => { Console.WriteLine("任务开始工作....."); Thread.Sleep(5000); }); // 启动 t.Start(); t.ContinueWith((task) => { Console.WriteLine("任务完成,完成时候的状态为:"); Console.WriteLine("IsCanceled={0}\tIsCompleted={1}\tIsFaulted={2}

【信息系统项目管理师】信息系统综合测试与管理

[亡魂溺海] 提交于 2020-02-10 20:40:35
文章目录 测试基础 软件测试技术 信息系统测试管理 基本不考 2分,案例分析 测试基础 软件测试(评价盒改进产品质量、识别产品缺陷)单元、集成、系统、验收测试 V模型在需求阶段就开始写测试用例了 V模型 (需求和测试一一对应)第一章的图是错的 结构化测试/V测试 优点 可将复杂的测试工作按阶段分为各个小阶段来实现 从多角度测试系统找出更多的缺陷 缺点 软件测试容易误导为软件开发的最后一个阶段,使需求、设计阶段产生的问题不能很早地发现 质量控制和测试效率无高效发挥 W模型(两个V模型叠加,一个开发的V,一个测试的V。开发和测试是同步进行的) H模型(将测试活动完全独立出来。形成一个完整独立的流程) X模型(定位探索性测试,不进行事先计划的特殊类型的测试) 软件测试技术 软件测试类型 按开发阶段 与用户相关的是确认测试 没有没有问题的程序,时间不足,测试该怎么做还是怎么做,质量保证 验收测试 通常会有四种结果 测试项目通过 测试项目没有通过,并且不存在变通方法,需要做出很大的修改 测试项目没有通过,并存在变通方法,在维护后期或下一版本改进 测试项目无法评估/无法给出完整评估。必须给出原因,如果是因为该测试项目没有说清楚,应当修改测试计划 发布测试/确认测试(测试执行者:测试内部人员 且 待测系统:公司内部产品) 验收测试/交付测试(测试执行者:客户/用户 且 待测系统:交付客户的项目)

NUnit详细使用方法

与世无争的帅哥 提交于 2020-02-09 08:32:13
NUnit详细使用方法 作者:Service Is Living   文章来源:Service Is Living BLOG 前一段时间,有人问我在.NET里如何进行TDD开发.这个问题促使我想对NUnit做一个详细的介绍.因为我们大家都知道NUnit是在.NET进行TDD的利器.  如果你已经知道很多关于NUnit的应用,请指出我的不对之处和提出一些建议,使本文更加完善.如果你对NUnit还不是很了解的话,我建议你还是阅读一下.  本文分为以下部分:  1. TDD的简介  首先什么是TDD呢?Kent Beck在他的<<测试驱动开发 >>(Addison-Wesley Professional,2003)一书中,使用下面2个原则来定义TDD:  ·除非你有一个失败的自动测试,永远不要写一单行代码.  ·阻止重复  我想第一个原则是显而易见的.在没有失败的自动测试下就不要写代码.因为测试是嵌入在代码必须满足的需求中.如果没有需求,就没有必要实现任何东西.所以这个原则阻止我们去实现那些没有测试和在解决方案中不需要的功能.  第二个原则说明了在一个程序中,不应该包含重复的代码.如果代码重复,我想这就是不好的软件设计的象征.随着时间的流逝,它会对程序造成不一致的问题,并且使代码变非常混乱 ,因为我们时常不会记得重复代码的位置.如果发现代码重复,我想我们应该立即删除代码重复

NUnit2.0详细使用方法

独自空忆成欢 提交于 2020-02-09 08:31:59
1. TDD的简介 首先什么是TDD呢?Kent Beck在他的<<测试驱动开发 >>(Addison-Wesley Professional,2003)一书中,使用下面2个原则来定义TDD: · 除非你有一个失败的自动测试,永远不要写一单行代码. · 阻止重复 我想第一个原则是显而易见的.在没有失败的自动测试下就不要写代码.因为测试是嵌入在代码必须满足的需求中.如果没有需求,就没有必要实现任何东西.所以这个原则阻止我们去实现那些没有测试和在解决方案中不需要的功能. 第二个原则说明了在一个程序中,不应该包含重复的代码.如果代码重复,我想这就是不好的软件设计的象征.随着时间的流逝,它会对程序造成不一致的问题,并且使代码变非常混乱 ,因为我们时常不会记得重复代码的位置.如果发现代码重复,我想我们应该立即删除代码重复.其实这就涉及到重构了.在这里我就不多讲了. 一般来说,测试分为2种类型,一是程序员自己的测试,另外一种是客户的测试.关于客户测试,我推荐一个FIT的框架,非常不错。在这里,我们讲的TDD就是程序员测试.那么什么是程序员测试呢?我认为就是我们常说的单元测试.既然是单元测试,在.NET里势必会用到某些工具,目前最著名恐怕就是我即将介绍的NUnit了, 2.NUnit的介绍 NUnit是一个单元测试框架,专门针对于.NET来写的.其实在前面有JUnit(Java),CPPUnit

NUnit2.0详细使用方法

你离开我真会死。 提交于 2020-02-09 08:31:08
1. TDD的简介 首先什么是TDD呢?Kent Beck在他的<<测试驱动开发 >>(Addison-Wesley Professional,2003)一书中,使用下面2个原则来定义TDD: · 除非你有一个失败的自动测试,永远不要写一单行代码. · 阻止重复 我想第一个原则是显而易见的.在没有失败的自动测试下就不要写代码.因为测试是嵌入在代码必须满足的需求中.如果没有需求,就没有必要实现任何东西.所以这个原则阻止我们去实现那些没有测试和在解决方案中不需要的功能. 第二个原则说明了在一个程序中,不应该包含重复的代码.如果代码重复,我想这就是不好的软件设计的象征.随着时间的流逝,它会对程序造成不一致的问题,并且使代码变非常混乱 ,因为我们时常不会记得重复代码的位置.如果发现代码重复,我想我们应该立即删除代码重复.其实这就涉及到重构了.在这里我就不多讲了. 一般来说,测试分为2种类型,一是程序员自己的测试,另外一种是客户的测试.关于客户测试,我推荐一个FIT的框架,非常不错。在这里,我们讲的TDD就是程序员测试.那么什么是程序员测试呢?我认为就是我们常说的单元测试.既然是单元测试,在.NET里势必会用到某些工具,目前最著名恐怕就是我即将介绍的NUnit了, 2.NUnit的介绍 NUnit是一个单元测试框架,专门针对于.NET来写的.其实在前面有JUnit(Java),CPPUnit

单元测试之道-使用NUnit(c#)

空扰寡人 提交于 2020-02-09 08:30:40
这几天,在网上找了些关于单元测试的使用说明(NUnit).由于初学,就拿自己的测试用例来说说吧. 1. TDD的简介 首先什么是TDD呢?Kent Beck在他的<<测试驱动开发 >>(Addison-Wesley Professional,2003)一书中,使用下面2个原则来定义TDD: · 除非你有一个失败的自动测试,永远不要写一单行代码. · 阻止重复 我想第一个原则是显而易见的.在没有失败的自动测试下就不要写代码.因为测试是嵌入在代码必须满足的需求中.如果没有需求,就没有必要实现任何东西.所以这个原则阻止我们去实现那些没有测试和在解决方案中不需要的功能. 第二个原则说明了在一个程序中,不应该包含重复的代码.如果代码重复,我想这就是不好的软件设计的象征.随着时间的流逝,它会对程序造成不一致的问题,并且使代码变非常混乱 ,因为我们时常不会记得重复代码的位置.如果发现代码重复,我想我们应该立即删除代码重复.其实这就涉及到重构了.在这里我就不多讲了. 一般来说,测试分为2种类型,一是程序员自己的测试,另外一种是客户的测试.关于客户测试,我推荐一个FIT的框架,非常不错。在这里,我们讲的TDD就是程序员测试.那么什么是程序员测试呢?我认为就是我们常说的单元测试.既然是单元测试,在.NET里势必会用到某些工具,目前最著名恐怕就是我即将介绍的NUnit了, 2.NUnit的介绍

NUnit2.0详细使用方法

爱⌒轻易说出口 提交于 2020-02-09 08:30:06
前一段时间,有人问我在.NET里如何进行TDD开发.这个问题促使我想对NUnit做一个详细的介绍.因为我们大家都知道NUnit是在.NET进行TDD的利器. 如果你已经知道很多关于NUnit的应用,请指出我的不对之处和提出一些建议,使本文更加完善.如果你对NUnit还不是很了解的话,我建议你还是阅读一下. 本文分为以下部分: 1. TDD的简介 首先什么是TDD呢?Kent Beck在他的<<测试驱动开发 >>(Addison-Wesley Professional,2003)一书中,使用下面2个原则来定义TDD: · 除非你有一个失败的自动测试,永远不要写一单行代码. · 阻止重复 我想第一个原则是显而易见的.在没有失败的自动测试下就不要写代码.因为测试是嵌入在代码必须满足的需求中.如果没有需求,就没有必要实现任何东西.所以这个原则阻止我们去实现那些没有测试和在解决方案中不需要的功能. 第二个原则说明了在一个程序中,不应该包含重复的代码.如果代码重复,我想这就是不好的软件设计的象征.随着时间的流逝,它会对程序造成不一致的问题,并且使代码变非常混乱 ,因为我们时常不会记得重复代码的位置.如果发现代码重复,我想我们应该立即删除代码重复.其实这就涉及到重构了.在这里我就不多讲了. 一般来说,测试分为2种类型,一是程序员自己的测试,另外一种是客户的测试.关于客户测试

Android WebRTC 音视频开发总结(五)-- webrtc开发原型

℡╲_俬逩灬. 提交于 2020-02-08 09:32:05
这些天基于WebRTC做了个 手机视频监控 的程序,分享出来,供想了解这方面内容的朋友参考。 这个程序最早是广州一家智能穿戴设备公司请我们做的(他们不需要底层源码,也不需要ios版本),之后我们在这个基础上做了很多的扩充和完善. 目前产品基本功能如下: 1, 支持android,ios,PC之间的相互视频(底层通讯模块都是自己开发的). 2, 服务端既可以支持windows部署,也可以支持linux部署. 3, 支持视频监控,语音和文本沟通. 4, 支持扩展到视频教学,多人广播,秀场等等场景. 5, 如需测试程序和部分源码,请发邮件跟我联系. 这里也有另一份文档的测试说明:http://www.cnblogs.com/lingyunhu/p/rtc23.html 来源: https://www.cnblogs.com/lingyunhu/p/3722029.html

您的Spring框架注释指南,请注意查收

让人想犯罪 __ 提交于 2020-02-07 17:37:50
这是关于几乎所有Spring Framework注释的简化,包括Core,Spring Cloud,Spring MVC,Spring REST和Spring Boot。 在本文中,我们将介绍Spring框架中可用的注释。 核心Spring框架注释 @Required 此注释适用于bean setter方法。考虑一个需要强制执行必需属性的方案。该 @Required 注释表明,受影响的bean必须在配置时所要求的属性来填充。否则,将BeanInitializationException 引发类型 异常。 @Autowired 此注释适用于字段,setter方法和构造函数。该 @Autowired 注释对象内喷射隐含的依赖。 当您@Autowired 在字段上使用并使用属性名称传递字段的值时,Spring会自动为字段分配传递的值。 您甚至可以@Autowired 在私有属性上使用 ,如下所示。(但是,这是非常糟糕的做法!) public class Customer { @Autowired private Person person; private int type; } 当您@Autowired 在setter方法上使用 时,Spring会尝试通过对该方法进行类型自动装配来执行它。您正在指示Spring应该使用setter方法来初始化此属性,您可以在其中添加您的自定义代码

windows下安装配置TortoiseGit

痴心易碎 提交于 2020-02-05 18:59:31
1.下载对应的安装包和语言包,地址:https://tortoisegit.org/download/ 2、先安装TortoiseGit程序包,一直点击下一步,可以根据自身需求是否更改安装目录 3、安装语言包,一直点击下一步即可 4.、配置 选择语言 打开PuttyGen生成秘钥 拷贝公钥粘贴到Git服务器比如github、保存私钥到本地路径 配置Pageant,选择本地保存的私钥即可 5、测试执行 注意:如果你使用的服务器是github有可能由于网络问题没法操作成功,需要多试几次,或者连接别的平台试下。 来源: CSDN 作者: 罗罗诺亚-小鱼 链接: https://blog.csdn.net/Tracycater/article/details/104184479