Mono 3.2 上跑NUnit测试
时间:2022-04-23
本文章向大家介绍Mono 3.2 上跑NUnit测试,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
NUnit是一款堪与JUnit齐名的开源的回归测试框架,供.net开发人员做单元测试之用,可以从www.nunit.org网站上免费获得,最新版本是2.5。Mono 3.2 源码安装的,在/usr/bin/ 下面有2.4.8 版本:
[azureuser@mono /]$ /usr/bin/nunit-console4
NUnit version 2.4.8
Copyright (C) 2002-2007 Charlie Poole.
Copyright (C) 2002-2004 James W. Newkirk, Michael C. Two, Alexei A. Vorontsov.
Copyright (C) 2000-2002 Philip Craig.
All Rights Reserved.
Runtime Environment -
OS Version: Unix 2.6.32.279
CLR Version: 4.0.30319.17020 ( 3.3.0 (master/1022c50 Thu Jul 25 13:16:35 UTC 2013) )
fatal error: no inputs specified
本文用一个BDD的框架Bddify 进行测试,关于这个框架的更详细信息可以参看 BDDfy In Action。
[azureuser@mono /]$ sudo /usr/bin/nunit-console4 /home/azureuser/BddifySamples/Bddify.Samples.dll
NUnit version 2.4.8
Copyright (C) 2002-2007 Charlie Poole.
Copyright (C) 2002-2004 James W. Newkirk, Michael C. Two, Alexei A. Vorontsov.
Copyright (C) 2000-2002 Philip Craig.
All Rights Reserved.
Runtime Environment -
OS Version: Unix 2.6.32.279
CLR Version: 4.0.30319.17020 ( 3.3.0 (master/1022c50 Thu Jul 25 13:16:35 UTC 2013) )
.Story: Account holder withdraws cash
As an Account Holder
I want to withdraw cash from an ATM
So that I can get money when the bank is closed
Scenario: Account has insufficient fund
Given the Account Balance is $10
And the Card is valid
And the machine contains enough money
When the Account Holder requests $20
Then the ATM should not dispense any Money
And the ATM should say there are Insufficient Funds
And the Account Balance should be $20
And the Card should be returned
.Story: Account holder withdraws cash
As an Account Holder
I want to withdraw cash from an ATM
So that I can get money when the bank is closed
Scenario: Account has sufficient fund
Given the account balance is $100
And the Card is valid
And the machine contains enough money
When the account holder requests $20
Then the ATM should dispense $20
And the account balance should be $80
And the card should be returned
.Story: Account holder withdraws cash
As an Account Holder
I want to withdraw cash from an ATM
So that I can get money when the bank is closed
Scenario: Card has been disabled
Given the Card is disabled
When the Account Holder requests 20
Then Card is retained
And the ATM should say the Card has been retained
.Story: Tic tac toe
As a player
I want to have a tic tac toe game
So that I can waste some time!
Scenario: Cat's game
Given the board rows looks like [X, O, X], [O, O, X] and [X, X, O]
Then it should be a cats game
.Story: Tic tac toe
As a player
I want to have a tic tac toe game
So that I can waste some time!
Scenario: O wins
Given the following board X, X, O, X, O, , , ,
When the game is played at (2, 0)
Then the winner should be O
.Story: Tic tac toe
As a player
I want to have a tic tac toe game
So that I can waste some time!
Scenario: When x and o play their first moves
Given a new game
When X and O play on (0, 0), (2, 2)
Then the board state should be X, , , , , , , , O
.N.Story: Tic tac toe
As a player
I want to have a tic tac toe game
So that I can waste some time!
Scenario: X wins
Given the board rows looks like [X, X, O], [X, X, O] and [O, O, ]
When x plays in the bottom right
Then the winner should be x
Tests run: 7, Failures: 0, Not run: 1, Time: 0.775 seconds
Introduction to bddify: A Simple to Use and Extend BDD Framework for .NET
- 推荐个找代码示例的VS 插件 All-In-One Code Framework Sample Browser
- 明星推出定制AI形象,虚拟形象有何优势
- apache工作模式梳理
- Mysql的二进制日志binlog的模式说明
- Git版本控制器使用总结性梳理
- “黑科技”人脸识别 TA和你的距离不是一般的近
- android之数据存储之SQLite
- 事故记录:php-cgi进程过多导致系统资源耗尽
- sass 基础——回顾
- Docker容器学习梳理--基础知识(1)
- Android系统目录介绍
- 如何查询一个进程下面的线程数(进程和线程区别)
- 无人厨房来了!未来厨房竟然长这样
- ImageView的scaletype属性
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 下下下一代防火墙关键技术漫谈
- Mysql事务隔离级别
- ent orm笔记1---快速尝鲜
- UsoDllLoader:一款功能强大的武器化特权文件写入工具
- 宇智波程序笔记10-为什么你使用的 Spring Security OAuth 过期了
- 无线电侧信道攻击利用复现:监听显示器显示内容
- typeScript 配置文件该怎么写?
- 内网渗透:不出网渗透技巧
- Python自学成才之路 生成器的使用
- ent orm笔记2---schema使用(上)
- 力扣1514——概率最大的路径
- Pytest之自定义mark
- 全网首发 | 通达OA多枚0day漏洞分享
- ubuntu 解压rar文件
- 基于Hive进行数仓建设的资源元数据信息统计