phpunit测试学习 1:一点简单的扼要有用的东西的总结 一点入门认识
16:45 2015/12/8
phpunit测试学习 1:一点简单的扼要有用的东西的总结 一点入门认识
具体的入门安装和入门实践请参照文中的推荐博客或网上其他博客
推荐博客,我感觉这几篇博客写得很不错,虽然一和二可以结合在一起,内容并不多
且给新手更容易带来学习信心:
安装建议参照我的另一篇安装博客,因为当时我是按照这种方式失败的,文中提及网
络原因导致失败,我当时显示的是安装的某个路径似乎没有维护了,那个url已经不存
在了(所以我也不知道是网络原因还是真的那个路径不存在了)(PHP教程:PHPUnit学习
笔记(一)PHPUnit介绍及安装:http://be-evil.org/phpunit-study-note-
introduction-and-install.html)
PHP教程:PHPUnit学习笔记(二)PHPUnit基本用法:http://be-evil.org/phpunit-
study-note-basic-use.html
阶段三,四在阶段二文章的底部有推荐链接,请自行进入学习
PHPUnit可以实现测试方法的依赖关系
class ArrayTest extends PHPUnit_Framework_TestCase 继承于
PHPUnit_Framework_TestCase,进一步实现模块测试
@depends:依赖关系通过注释@depends来定义,如果某个测试方法依赖的方法测试没
有功过,那么PHPUnit会自动跳过后面所有的依赖测试
@dataProvider: dataProvider标签标注给它提供数据的方法名,定义之后PHPUnit会
自动的将数据提供者方法返回的数据依次传入到测试方法中测试.
有个实例:和前一个例子实现的测试内容相同,但是数据提供者返回
的是一个迭代器对象而不是是数组(即是对象内的数据提供方法返回一个new的新对
象---即是这个类的对象)
检查异常: PHPUnit中,我们有3种方式来检查异常是否抛出
@expectedException: 方法一: 注释法, 用@expectedException 标定期待的异常
$this->setExpectedException: 方法二: 设定法,使用 $this-
>setExpectedException 设定期待的异常
try catch + fail: 方法三: try catch + fail法
有时候我们的代码在运行时会出现php错误,如整除0,文件不存在等等
PHPUnit中,它会自动把错误转换为异常PHPUnit_Framework_Error并抛出,我们只需要
在测试方法中设定抓取这个异常即可:
实例:
/**
* @expectedException PHPUnit_Framework_Error // 期待
PHPUnit_Framework_Error的异常
*/
function test (){.....}
断言(Assertions)是PHPUnit提供的一系列对程序执行结果测试的方法。通俗的讲,就
是断言执行程序结果为我们期待的值
assertArrayHasKey(mixed $key, array $array[, string $message = ''])
断言数组$array含有索引$key, $message用于自定义输出的错误信息,后同
phpunit测试学习 1:一点简单的扼要有用的东西的总结 一点入门认识的更多相关文章
- phpunit测试学习 2 分类总结断言涉及哪些方面
11:27 2015/12/9phpunit测试学习 2, 分类总结断言涉及哪些方面先推荐windows快速打开某处路径下的cmd,进入测试状态:可以在文件夹中,按住Shift+鼠标右键,这时候你就 ...
- 第二节 PHPUnit测试的剖析
现在,让我们仔细看看测试结构的样子. 让我们从一个简单的测试用例开始,它将显示基本的PHPUnit测试结构. 以下代码片段是测试用于排序数组的两个PHP函数的一个非常基本的示例:asort()用于对数 ...
- phpunit测试成功 phpunit测试实践代码
16:12 2015/12/8phpunit测试成功,代码写在www目录下,以类名命名代码文件,我的文件名为 ArrayTest.php,类名为ArrayTest,内部写了简单的测试代码:<?p ...
- Web安全测试学习手册-业务逻辑测试
i春秋作家:Vulkey_Chen 首先感谢朋友倾璇的邀请 http://payloads.online/archivers/2018-03-21/1 ,参与了<web安全测试学习手册>的 ...
- Sony深度学习框架 - Neural Network Console - 教程(1)- 原来深度学习可以如此简单
“什么情况!?居然不是黑色背景+白色文字的命令行.对,今天要介绍的是一个拥有白嫩的用户界面的深度学习框架.” 人工智能.神经网络.深度学习,这些概念近年已经涌入每个人的生活中,我想很多人早就按捺不住想 ...
- 一点简单的关于ASP.NET下载
一点简单的关于ASP.NET下载 个人简单的认为是有两种方法的,第一种就是直接用一个超链接链接到我们要下载的资源就可以了.只是说这个方法会有一点小问题就是,比如像图片或者文本文件这些浏览器是可以自动将 ...
- JSP学习笔记(三):简单的Tomcat Web服务器
注意:每次对Tomcat配置文件进行修改后,必须重启Tomcat 在E盘的DATA文件夹中创建TomcatDemo文件夹,并将Tomcat安装路径下的webapps/ROOT中的WEB-INF文件夹复 ...
- 测试redis+keepalived实现简单的主备切换【转载】
转自: 测试redis+keepalived实现简单的主备切换 - Try My Best 尽力而为 - ITeye技术网站http://raising.iteye.com/blog/2311757 ...
- Hibernate二次学习一----------Hibernate简单搭建
因为博客园自带的markdown不太好用,因此所有markdown笔记都使用cmd_markdown发布 Hibernate二次学习一----------Hibernate简单搭建: https:// ...
随机推荐
- 浅谈Android中layout_weight
引言 在开发android过程中,我们经常需要对界面进行按比例进行布局,我们一般都会使用layout_属性来进行设置.今天这篇文章我们就来简单介绍下layout_weight的使用和布局原理.随着做项 ...
- Verilog笔记——YUV2RGB的模块测试
1 YUV2RGB的模块如下: module yuv2rgb( clk, //时钟输入 rstn, //复位输入,低电平复位 y_in, //变换前Y分量输出 cb_in, //变换前Cb分量输出 c ...
- Linux下百度云盘报 获取bdstoken失败
在用linux下百度云盘工具(bcloud),登录时,报获取bdstoken失败. 在网上搜了一下,解决办法如下. 找到auth.py文件 locate auth.py |grep bcloud 结果 ...
- javascript 函数与对象
javascript中的函数是非常重要的概念,也是比较难于理解的一个知识点! 下面就来聊聊函数: JS基于对象:什么是基于对象呢?简单的说所有代码都是"对象"; 比如函数: fun ...
- 微信小程序开发视频教程新鲜出炉
微信小程序开发公测了,可是对于新手来说,不同的框架不同的开发机制,如何快速适应呢?微信小程序开发视频教程新鲜出炉了,从零开始一步一步搭建微信小程序,每个章节都会涉及到不同的知识点,等教程学习完你不但掌 ...
- 修复 ThinkPHP3.2.3 抛出异常模块的一个BUG,关闭字段缓存功能
使用 ThinkPHP3.2.3 遇到一个奇怪的问题,正式环境上报错,提示 “页面错误!请稍后再试~” 为了查看到底出啥错误,哪里出错,于是在入口文件中加了一段代码,开启调试: defined('AP ...
- Javascript闭包深入解析及实现方法
1.什么是闭包 闭包,官方对闭包的解释是:一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分.闭包的特点:1. 作为一个函数变量的一个引用,当函数返回时 ...
- Asp.Net Core--基于角色的授权
翻译如下: 当创建身份时,它可以属于一个或多个角色,例如Tracy可以属于管理员和用户角色,而Scott可以仅属于用户角色. 如何创建和管理这些角色取决于授权过程的后备存储. 角色通过ClaimsPr ...
- 非常简单的升级phpnow自带的php版本到5.3的方法
下载PHP5.3 下载地址百度一下“PHP5.3下载”就有很多网站提供下载的,也可以去官网下载最新的,记得下载ZIP压缩的噢 2 解压与命名 将下载的PHP5.3压缩包解压至phpnow的安装目录,命 ...
- migration integer limit option
https://gist.github.com/stream7/1069589 :limit Numeric Type Column Size Max value 1 tinyint 1 byte 1 ...