atoum / praspel-extension
此包已 弃用 并不再维护。未建议替代包。
在 atoum 中包含 Praspel。
0.17.02.24
2017-02-24 13:54 UTC
Requires
- atoum/atoum: ^2.0 | ^3.0
- hoa/consistency: ~1.0
- hoa/console: ~3.0
- hoa/dispatcher: ~1.0
- hoa/exception: ~1.0
- hoa/iterator: ~2.0
- hoa/math: ~1.0
- hoa/praspel: ~1.0
- hoa/realdom: ~1.0
- hoa/router: ~3.0
- hoa/visitor: ~2.0
This package is auto-updated.
Last update: 2021-09-20 08:30:06 UTC
README
此扩展在 atoum 中引入了 Praspel。
atoum 是一个 简单、现代 且 直观 的 PHP 单元测试框架!
Hoa 是一组 模块化、可扩展 和 结构化 的 PHP 库。此外,Hoa 旨在成为工业界和研究界之间的桥梁。
安装
使用 Composer,要将此库包含到依赖中,您需要要求 atoum/praspel-extension
composer require --dev atoum/praspel-extension
请阅读网站以获取有关如何安装的更多信息:安装信息。
要激活扩展,请在您的 .atoum.php
配置文件中添加此行
$runner->addExtension(new \Atoum\PraspelExtension\Manifest());
快速使用
此扩展将两个方面引入到 atoum 中:自动测试数据生成(来自 Hoa\Realdom
)和自动测试套件生成(来自 Hoa\Praspel
,它依赖于 Hoa\Realdom
)。
自动测试数据生成
[需要更多解释] 我们将使用三个断言器来生成数据,一个用于验证数据
realdom
用于创建一个现实域析取sample
从现实域析取中生成一个数据sampleMany
生成多个数据predicate
用于验证数据与现实域析取的一致性
例如,我们将生成一个由:[7; 13] ∪ [42; 153] 定义的整数
$this->sample($this->realdom->boundinteger(7, 13)->or->boundinteger(42, 153))
我们可以显然使用 atoum 的经典断言器
foreach ($this->sampleMany($this->realdom->boundinteger(-5, 5), 1024) as $i) { $this->integer($i)->isGreaterThan(0); }
(此示例有点简单 ;-)).
我们可以生成更复杂的数据(请参阅 Hoa\Realdom
中的标准现实域库),例如基于正则表达式(甚至语法)的字符串
$data = $this->realdom->regex('/[\w\-_]+(\.[\w\-\_]+)*@\w\.(net|org)/'); $this->string($this->sample($data)) ->contains(…)->…;
或者甚至是日期
$data = $this->realdom->date( 'd/m H:i', $this->realdom->boundinteger( $this->realdom->timestamp('yesterday'), $this->realdom->timestamp('next Monday') ) ); foreach ($this->sampleMany($data, 10) as $date) { var_dump($date); }
自动测试套件生成
我们将使用 Bin/praspel
二进制脚本。[待办事项]
Hoa 的文档
网站上有不同的文档:https://hoa-project.net/。
链接
许可证
Hoa 及其扩展均在 New BSD 许可证(BSD-3-Clause)下。请参阅 许可证
。