`

色色写的简易PHP单元测试框架 Kenxu_Uint v0.1

阅读更多

色色写的简易PHP单元测试框架 Kenxu_Uint v0.1发布了,

 

呵呵呵,终于可以不用PHP UNIT了 虽然很强大 但是很麻烦 安装的时候 日 还要pear的支持 ... 自己写了个

 

上代码看看:

 

要测试的模型类:

 

测试用例类

测试结果:

 

 

 

整个测试框架代码不超过12K,.......................

提供了一个例子,结构如下:

 

 

	function fetchBooksTest(){
		
		$books = $this->_modBook->fetchBooks() ;

		Kenxu_Unit_Assert::assertThat( count($books),array(array('equal',3, '图书个数为3')) ,'测试图书元素' );
		Kenxu_Unit_Assert::assertThat( !$books,array(array('not_empty','值不能为空')) ,'测试图书元素' );
		Kenxu_Unit_Assert::assertNotNull( !$books,'图书表中数据为空' );
	}

 

这个方法里面的

Kenxu_Unit_Assert::assertThat

原型:

static function assertThat($value,array $rules=null,$description=null)  $rules 支持多个测试条件

 

比如这样的

array(
					array('not_empty',true, '游戏名称不能为空'),
					array(array($this,'is_validname'),true,'游戏名称 不能包含特殊字符'),
					array(array($this->_modGame,'isUniqueFieldValue'),'gamename','游戏名称 已经存在'),
				)
 

 

 

 

  • 大小: 43.8 KB
  • 大小: 30.3 KB
  • 大小: 47.3 KB
  • 大小: 72.1 KB
  • 大小: 21 KB
  • 大小: 74.1 KB
分享到:
评论
9 楼 vb2005xu 2010-10-13  
引用
/**
* Sqlobject 适配器,建立在框架的数据库操作基础上的SQL抽象组件
*
* <code>
*     $sqlSelectInst = Kenxu_DB::getDBO($dbDsn)->getSqlobjectInstance()
*         ->newInstance('select','authors.*,books.*','users,books',array(
*             'authors.id' => 'books.author_id'
*         );
*  $sqlInst->limit($offset,$length);

* </code>
*
*
* @author KenXu
* @date: 2010-7-22 上午11:54:26
*/
8 楼 vb2005xu 2010-09-14  
我个人因为之前没有在大公司呆过,也没有做过大型网站项目的经验,期待大家教我...
7 楼 vb2005xu 2010-09-14  
嗯 说的很对 后续版本会跟上的 主要是项目应用 随着项目 这个东西功能会扩充的...
6 楼 weiye 2010-09-14  
你这样的框架太弱了,只做这样的单元测试没有太大意义。
单元测试框架应该能够实现机制保证可以不断的重复测试。
所以构造虚拟的数据,mock等功能是必须要的。
这样的简化不符合单元测试的初衷
5 楼 vb2005xu 2010-09-13  
http://qeephp.com/projects/kenxuunittesting
4 楼 vb2005xu 2010-09-13  
http://code.google.com/p/kenxu-unit/

项目托管地址....

现在为 0.1的版本
3 楼 vb2005xu 2010-09-10  
代码 正在弄 google code 申请 ...下周提供 下班了 Ooo
2 楼 vb2005xu 2010-09-10  
测试记录 sql:
DROP TABLE IF EXISTS `books`;
CREATE TABLE `books` (
  `id` int(11) NOT NULL auto_increment,
  `author_id` int(11) NOT NULL,
  `name` varchar(80) collate utf8_unicode_ci NOT NULL,
  `description` text collate utf8_unicode_ci NOT NULL,
  `created_at` datetime default NULL,
  `updated_at` datetime default NULL,
  PRIMARY KEY  (`id`),
  UNIQUE KEY `name` (`name`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

-- ----------------------------
-- Records of books
-- ----------------------------
INSERT INTO `books` VALUES ('1', '10', '小王子', '一直图书', null, null);



因为是一条记录 , 所以上面图中 显示 成功1次 失败两次 并标明了 失败代码的位置和行号

能对多个测试用例进行 测试 呵呵
1 楼 vb2005xu 2010-09-10  
关于大Z做的CoreAMP使用PhpUint的用法:
引用

下载完CoreAMP,以及start20100827.bat补丁。
修改这个批处理,加上PHPUnit参数
::PHPUnit命令参数,以下是示例请自行修改。
set phpunit=--bootstrap bootstrap.php --include-path ..\..\coremvc\svn\trunk ..\..\coremvc\svn\trunk\tests

在控制中心选择24即可。

相关推荐

    Python课程设计 课设 手写数字识别卷积神经网络源码+文档说明.zip

    高分设计源码,详情请查看资源内容中使用说明 高分设计源码,详情请查看资源内容中使用说明高分设计源码,详情请查看资源内容中使用说明高分设计源码,详情请查看资源内容中使用说明高分设计源码,详情请查看资源内容中使用说明高分设计源码,详情请查看资源内容中使用说明高分设计源码,详情请查看资源内容中使用说明高分设计源码,详情请查看资源内容中使用说明高分设计源码,详情请查看资源内容中使用说明高分设计源码,详情请查看资源内容中使用说明高分设计源码,详情请查看资源内容中使用说明高分设计源码,详情请查看资源内容中使用说明高分设计源码,详情请查看资源内容中使用说明高分设计源码,详情请查看资源内容中使用说明高分设计源码,详情请查看资源内容中使用说明高分设计源码,详情请查看资源内容中使用说明高分设计源码,详情请查看资源内容中使用说明高分设计源码,详情请查看资源内容中使用说明高分设计源码,详情请查看资源内容中使用说明高分设计源码,详情请查看资源内容中使用说明高分设计源码,详情请查看资源内容中使用说明高分设计源码,详情请查看资源内容中使用说明

    SpringBoot2.0快速开发框架权限.rar

    SpringBoot2.0快速开发框架权限.rarSpringBoot2.0快速开发框架权限.rarSpringBoot2.0快速开发框架权限.rar

    大语言模型的微调和推理baichuan7B, chatglm2-6B, Qwen-7B-chat源码.zip

    详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;

    基于Qt与STM32平台开发的汽车车机系统上位机

    基于Qt开发的汽车车机系统上位机 & 常见类型汽车传感器信号模拟发生器 任务和要求: 任务: 根据发动机测控系统信号需求,设计一套发动机信号模拟器人机交互系统,能够根据需要向下位机输出控制信号,使其输出发动机测控系统需要的传感器模拟信号,给发动机测控系统的开发提供方便。 要求: 1.设计应包含上位机与下位机的交互程序及人机交互界面的设计,与下位机设计相结合,使其能够实现全部类型发动机传感器信号的模拟输出及显示。 2.设计中需要采用模块化开发程序。 3.所设计的人机交互界面简洁合理。 4.应考虑所设计系统的实用性。 具体工作内容: 1.根据设计目标,查阅相关设计标准和设计方法资料,对发动机信号模拟器设计中的关键工程原理和工程方法进行提炼,并围绕关键问题进行国内外设计现状调研,开展分析、评价与总结,确定主要研究内容,制定设计技术路线,制定设计计划(周进度),撰写开题报告,并进行开题答辩,开题报告参考文献应不少于15篇(其中外文文献不少于 4 篇,近五年文献不少于三分之一)。 2.根据设计要求和技术指标,进行满足功能原理需求的多方案拟定,考虑安全、 标准等多因素进行技术性与经济性评价

    实验-三、数据库安全性(目的、要求和模板).doc

    实验-三、数据库安全性(目的、要求和模板).doc

    毕设绝技 - 4天玩乐完成商城系统完整资料day02

    文件为第二天视频教程 在毕业设计的挑战中,有时我们需要以极短的时间完成一个相对复杂的项目,比如一个商城系统。虽然时间紧迫,但只要我们合理规划、高效执行,完全有可能在4天内完成一个基础且功能完备的商城系统。 商城系统,也被称为网上商城系统或Online Mall system,是一种功能完善的网上销售系统。该系统主要包括产品发布、在线订购、在线支付、在线客服等功能模块,旨在为企业或个人提供一个在线销售平台,实现商品的展示、交易和客户服务。 商城系统具有多种核心功能,如商品管理、订单管理、用户管理和营销管理。商品管理功能支持商品的添加、编辑、删除、分类和搜索,满足商家对商品信息的全面管理需求。订单管理功能则涵盖订单的生成、支付、发货、退款和评价等环节,确保交易流程的顺畅进行。用户管理功能包括用户的注册、登录、个人信息管理和收货地址管理等,提升用户体验。而营销管理功能则通过促销活动的设置、优惠券的发放和积分兑换等手段,帮助商家提升销售业绩。 商城系统的特点主要体现在功能性、易用性和安全性上。商城系统注重功能性的开发,每个功能都有其发挥作用的地方,满足商家的实际需求。

    忻州师范学院-论文答辩PPT模板我给母校送模板作品.pptx

    PPT模板,答辩PPT模板,毕业答辩,学术汇报,母校模板,我给母校送模板作品,周会汇报,开题答辩,教育主题模板下载。PPT素材下载。

    小型餐饮管理系统-数据库设计报告.doc

    小型餐饮管理系统-数据库设计报告.doc

    毕业设计+Python+基于OpenCV的交通路口红绿灯控制系统设计+Sqlite +PyCharm 1.zip.zip

    本资源中的源码都是经过本地编译过可运行的,下载后按照文档配置好环境就可以运行。资源项目的难度比较适中,内容都是经过助教老师审定过的,应该能够满足学习、使用需求,如果有需要的话可以放心下载使用。有任何问题也可以随时私信博主,博主会第一时间给您解答!!! 本资源中的源码都是经过本地编译过可运行的,下载后按照文档配置好环境就可以运行。资源项目的难度比较适中,内容都是经过助教老师审定过的,应该能够满足学习、使用需求,如果有需要的话可以放心下载使用。有任何问题也可以随时私信博主,博主会第一时间给您解答!!! 本资源中的源码都是经过本地编译过可运行的,下载后按照文档配置好环境就可以运行。资源项目的难度比较适中,内容都是经过助教老师审定过的,应该能够满足学习、使用需求,如果有需要的话可以放心下载使用。有任何问题也可以随时私信博主,博主会第一时间给您解答!!

    西南交通大学-毕业答辩PPT模板我给母校送模板作品.pptx

    PPT模板,答辩PPT模板,毕业答辩,学术汇报,母校模板,我给母校送模板作品,周会汇报,开题答辩,教育主题模板下载。PPT素材下载。

    2024年中国中空纤维膜行业研究报告.docx

    2024年中国中空纤维膜行业研究报告

    四川师范大学-PPT模板我给母校送模板作品.pptx

    PPT模板,答辩PPT模板,毕业答辩,学术汇报,母校模板,我给母校送模板作品,周会汇报,开题答辩,教育主题模板下载。PPT素材下载。

    实验三、数据库安全性实验报告.doc

    实验三、数据库安全性实验报告.doc

    西北农林科技大学-PPT模板我给母校送模板作品.pptx

    PPT模板,答辩PPT模板,毕业答辩,学术汇报,母校模板,我给母校送模板作品,周会汇报,开题答辩,教育主题模板下载。PPT素材下载。

    java电子相册源码.rar

    java电子相册源码.rarjava电子相册源码.rarjava电子相册源码.rarjava电子相册源码.rar

    玉米脱粒机设计及其总装配图(论文、dwg图).rar

    玉米脱粒机设计及其总装配图(论文、dwg图)

    studyopencv2

    studyopencv2

    2024-2030全球与中国牛肉卷饼市场现状及未来发展趋势.docx

    2024-2030全球与中国牛肉卷饼市场现状及未来发展趋势

    在KITTI车辆数据集,采用随机多尺度变化增强车辆训练集样本数量,采用k-means聚类获取最优先验候选框大小

    在KITTI车辆数据集,采用随机多尺度变化增强车辆训练集样本数量,采用k-means聚类获取最优先验候选框大小,引入到YOLOv3模型中,提升模型的车辆检测精度和鲁棒性。.zip

    基于Vue+SSM高校疫情信息管理系统源码.zip

    详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;详情请查看资源内容中使用说明;

Global site tag (gtag.js) - Google Analytics