学习phpunit(二)
时间:2020-07-11
本文章向大家介绍学习phpunit(二),主要包括学习phpunit(二)使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1、我的疑问:什么是测试套件
测试套件,是一套业务逻辑验证时,所需要的测试用例,包含测试逻辑、测试预期、测试结果。
一个套件里面,由多个测试类集合,一个测试类中可以有多个测试实例,因此可以测试多个测试类的多个逻辑
2、开始看phpnuit
phpunit 的五个基础类和接口
(1)class TestSuite 实现了(3)Test接口
(2)abstract class TestCase 实现了Test接口,且继承了(4)Assert类
(5)class TestResult 是一个针对期望值做检查的一套方法。
再学习一下,这些类的特点:
Test:所有测试类必须要实现的接口,里面只定义了一个
public function run(TestResult $result = null);一个接口的方法。
TestCase:它的源码,如何构造一个TestCase中,举例是
* <?php * class MathTest extends PHPUnit\Framework\TestCase * { * public $value1; * public $value2; * * protected function setUp() * { * $this->value1 = 2; * $this->value2 = 3; * } * }
从类名看,这是一个单元测试(测方法的)的基类(暂时不学,所以不看了)
TestSuite:
/** * Constructs a new TestSuite: * * - PHPUnit\Framework\TestSuite() constructs an empty TestSuite. * * - PHPUnit\Framework\TestSuite(ReflectionClass) constructs a * TestSuite from the given class. * * - PHPUnit\Framework\TestSuite(ReflectionClass, String) * constructs a TestSuite from the given class with the given * name. * * - PHPUnit\Framework\TestSuite(String) either constructs a * TestSuite from the given class (if the passed string is the * name of an existing class) or constructs an empty TestSuite * with the given name. */
从注释看,传入的参数是个类,那么,测试的对象很可能是接口之类的或者一套被测方法,而接口测试其实是一串测试方法的测试(所以,这个是接口测试要学的吧)
TestResult:前面说了,是一串检查期望的比如断言、跳过啊、之类的方法。
原文地址:https://www.cnblogs.com/ansonwan/p/13285302.html
- 工具| sqlmap payload修改之路
- 利用java8对设计模式的重构
- 漏洞|74cms 3.6 前台SQL注入+Python脚本小练习
- Matplotlib新手上路(上)
- CentOS 7 搭建基于携程Apollo(阿波罗)配置中心单机模式
- CentOS 7 安装Maven
- CentOS 7 安装Java 1.8
- Ocelot 集成Butterfly 实现分布式跟踪
- 如何从零开始学一门程序语言?
- 玩得一手好注入之order by排序篇
- [Cake] 1. CI中的Cake
- Docker镜像导致centos-root根分区容量爆满
- 分布式文件系统FastDFS动态扩容
- 高可用高性能分布式文件系统FastDFS实践Java程序
- php概述
- php教程
- php环境搭建
- PHP书写格式
- php变量
- php常量
- PHP注释
- php数组
- php字符串 string
- PHP整型 integer
- PHP浮点型 float
- php布尔型
- php数据类型之数组
- php数据类型之对象
- php数据类型之null
- php数据类型之间的转换
- php运算符
- php表达式
- PHP循环控制
- PHP流程控制
- php函数
- php全局变量
- PHP魔术变量
- php命名空间
- php 日期
- PHP包含文件
- php文件
- PHP 文件上传
- php Cookies
- php Sessions
- php email
- php安全email
- php错误处理
- PHP异常处理
- php过滤器
- PHP 高级过滤器
- php json
- php 表单
- PHP MySQL 简介
- PHP 连接 MySQL
- php创建数据库
- php 创建表
- php mysq 插入数据
- PHP MySQL 插入多条数据
- PHP MySQL 预处理语句
- php mysql 读取数据
- php mysql where
- PHP MySQL Order By
- PHP MySQL Update
- PHP MySQL Delete
- php ODBC
- 汽水瓶问题(非常interesting)
- 八种方法(实现两个数互换),绝了绝了!
- 当你触摸屏幕时手机都干了什么?你必须知道的Android事件传递
- 栈与队列:来看看栈和队列不为人知的一面
- 栈与队列:我用栈来实现队列怎么样?
- 栈与队列:用队列实现栈还有点别扭
- 短视频源码php,自动查找重复贴图
- 栈与队列:系统中处处都是栈的应用
- 长文慎入!大厂架构演进实战之手写 CAS 单点登录
- 栈与队列:匹配问题都是栈的强项
- SpringBoot源码学习(五)
- SpringBoot源码学习(六)
- SpringBoot源码学习(七)
- LeetCode52|有序数组中的单一元素
- LeetCode53|搜索二维矩阵II