C#测试假设条件

开发 后端
这里介绍C#测试假设条件是构建正确的程序最重要的一个方法。在你写一个函数时,你应该考虑并确定你对那个函数做了什么样的假设。

C#测试还是比较常见的东西,这里我们主要介绍C#测试假设条件,包括介绍大多数程序的bugs出现在程序员之间的接口等方面。

NET Framework中包含许多工具可以用来更快、更容易地编写正确的程序。但我们得面临这样的情况:出现bugs。不管程序多么简单,程序员都可能出错。根据我的经验,大多数程序的bugs出现在程序员之间的接口:当一个程序员编写的代码被另一个程序员调用时。不知何故,调用者破坏了代码编写时做的假设。是谁的过错呢?这并不要紧,更重要的是你能多快修好它?下面这些技巧将帮你在程序投入使用前更快地发现并解决这些问题。最终,技巧会帮你诊断任何的确在使用中出现的问题。

C#测试假设条件

C#测试假设条件是构建正确的程序最重要的一个方法。在你写一个函数时,你应该考虑并确定你对那个函数做了什么样的假设。你应该问自己以下这些问题:
1. 当这个函数被调用时,这个对象必须是怎样的(对象初试化,某个内在变量值)?
2. 当这个函数存在时,这个对象将会怎样(仍是#1,但包括该函数的副作用)?
3. 该函数的任何参数必须是怎样的(允许空值吗,输入值的范围是什么)?
4. 返回值必须是怎样的?

一旦你问了自己这四个问题并作出回答后,把答案放到代码中。在C#中,用System.Diagnostics.Debug类的Assent方法来表示:

  1. public bool ProcessIterations (int  
  2. numIters)  
  3. {  
  4. Debug.Assert (numIters > 0,  
  5. "ProcessIterations.",  
  6. "Iterations must be more than 0");  
  7. // More code... 

该代码片段执行了numiters参数必须大于零这样一个假设。如果你用一个无效的参数调用processiterations,该assert被触发。这时候,程序停止运行并通知用户出现的错误。声明(assertions)只被编译到debug 版本中的程序,所以它们不影响生产情况中的性能。

为什么用这种方法? 运用这种技巧可以确保很快地发现对你的类的方法未预料地使用。然后,或者调用者修改他的代码,或者要求在你的类的行为(behavior)中修改。

【编辑推荐】

  1. C#编程实现显示XML文件
  2. C#语言获取要显示页面
  3. 创建C# Windows窗体应用程序浅析
  4. C#实现窗体显示背景知识
  5. C# Lazy-Allocate设计概念
责任编辑:佚名 来源: 博客园
相关推荐

2009-08-14 00:30:09

C#条件编译指令

2009-08-12 14:29:32

C#条件运算符

2009-08-18 14:14:45

C#扩展方法性能测试

2009-08-07 13:50:11

C#字符串

2009-09-01 16:35:16

C#单元测试

2009-09-17 15:39:56

C#数组初始化

2009-08-25 17:15:50

C#隐藏C#重写C#重载

2009-09-02 17:10:45

C#语言入门

2009-08-25 17:21:31

C#索引

2009-09-01 16:45:00

C#单元测试工具

2009-09-01 16:10:28

C#单元测试

2019-03-13 22:40:15

机器学习假设算法

2009-08-25 17:59:49

C#入门

2009-08-27 16:11:03

C# delegateC# event

2009-08-13 17:04:09

C#语言C#程序

2009-09-01 16:03:32

C#单元测试

2024-04-26 11:14:34

C#单元测试框架

2009-08-18 10:30:30

C#枚举

2009-08-26 10:34:15

C#类型C#变量

2009-08-24 11:02:52

C#接口映射
点赞
收藏

51CTO技术栈公众号