当前位置: 首页 > news >正文

宁波网站建设用什么软件网站建设价格

宁波网站建设用什么软件,网站建设价格,江苏通力建设官方网站,域名搭建网站使用phpunit进行单元测试 本教程假定您使用 PHP 8.1 或 PHP 8.2。您将学习如何编写简单的单元测试以及如何下载和运行 PHPUnit. PHPUnit 10 的文档 在这。 下载:可以用以下2种方法之一: 1.PHP 存档 (PHAR) 我们分发了一个 PHP存档(PHAR&…

使用phpunit进行单元测试

本教程假定您使用 PHP 8.1 或 PHP 8.2。您将学习如何编写简单的单元测试以及如何下载和运行 PHPUnit.

PHPUnit 10 的文档 在这。

下载:可以用以下2种方法之一:

1.PHP 存档 (PHAR)

我们分发了一个 PHP存档(PHAR),其中包含使用PHPUnit 10所需的一切 。只需从这里 下载 并使其可执行:

wget -O phpunit https://phar.phpunit.de/phpunit-10.phar
➜ chmod +x phpunit
➜ ./phpunit --version
PHPUnit 10.0.0 by Sebastian Bergmann and contributors.

2.Composer

您可以使用 Composer 将 PHPUnit 作为本地、每个项目、开发时依赖项添加到您的项目中:

➜ composer require --dev phpunit/phpunit ^10./vendor/bin/phpunit --version
PHPUnit 10.0.0 by Sebastian Bergmann and contributors.

上面显示的示例假定composer在您的$PATH上。

您的 composer.json 应该看起来像这样:

{"autoload": {"classmap": ["src/"]},"require-dev": {"phpunit/phpunit": "^10"}
}

代码

src/Email.php

<?php 
declare(strict_types=1);
final class Email
{private string $email;private function __construct(string $email){$this->ensureIsValidEmail($email);$this->email = $email;}public static function fromString(string $email): self{return new self($email);}public function asString(): string{return $this->email;}private function ensureIsValidEmail(string $email): void{if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {throw new InvalidArgumentException(sprintf('"%s" is not a valid email address',$email));}}
}

测试代码

tests/EmailTest.php

<?php 
declare(strict_types=1);
use PHPUnit\Framework\TestCase;
final class EmailTest extends TestCase
{public function testCanBeCreatedFromValidEmail(): void{$string = 'user@example.com';$email = Email::fromString($string);$this->assertSame($string, $email->asString());}public function testCannotBeCreatedFromInvalidEmail(): void{$this->expectException(InvalidArgumentException::class);Email::fromString('invalid');}
}

测试执行:以下2种方法都可以:

1.PHP 存档 (PHAR)

./phpunit --bootstrap src/autoload.php tests
PHPUnit 10.0.0 by Sebastian Bergmann and contributors.
..                                        2 / 2 (100%)
Time: 70 ms, Memory: 10.00MB
OK (2 tests, 2 assertions)

上面假设你已经下载了phpunit.phar并将其作为phpunit放入你的$PATH,并且src/autoload.php 是一个为要测试的类设置自动加载 的脚本。这样的脚本通常使用 phpab 等工具生成。

–bootstrap src/autoload.php指示 PHPUnit 命令行测试运行程序在运行测试之前包含src/autoload.php.
tests 指示 PHPUnit 命令行测试运行程序执行在 tests 目录的 *Test.php 源代码文件中声明的所有测试.

2.Composer

./vendor/bin/phpunit tests
PHPUnit 10.0.0 by Sebastian Bergmann and contributors.
..                                        2 / 2 (100%)
Time: 70 ms, Memory: 10.00MB
OK (2 tests, 2 assertions)

上面假设 vendor/autoload.php(由 Composer 管理的自动加载器脚本)存在,并且能够加载 Email 类的代码。根据设置自动加载的方式,您可能需要立即运行composer dump-autoload。

tests 指示 PHPUnit 命令行测试运行程序执行在 tests 目录的 Test.php 源代码文件中声明的所有测试.

一些测试组件推荐:

https://packagist.org/packages/mockery/mockery
phpunit/phpunit
fakerphp/faker
https://github.com/phpstan/phpstan
vimeo/psalm
mikey179/vfsstream
rector/rector

引用

declare和strict_types

ps:declare(strict_types=1);

严格类型
默认情况下,如果能做到的话,PHP将会强迫错误类型的值转为函数期望的标量类型。例如,一个函数的一个参数期望是string,但传入的是integer,最终函数得到的将会是一个string类型的值。
可以基于每一个文件开启严格模式。在严格模式中,只有一个与类型声明完全相符的变量才会被接受,否则将会抛出一个TypeError。 唯一的一个例外是可以将integer传给一个期望float的函数。
使用 declare 语句和strict_types 声明来启用严格模式
https://blog.csdn.net/joshua317/article/details/121252625

assertsame

使用运算符检查身份
报告由 if 标识的错误,如果两个变量的类型和值不同 或者 两个变量不引用同一对象 报错
https://docs.phpunit.de/en/10.1/assertions.html#assertsame

http://www.yidumall.com/news/87529.html

相关文章:

  • 如何做一份企业网站规划seo服务顾问
  • 化妆品营销型网站模板什么样的人适合做策划
  • 做网站要哪些人员磁力吧最佳搜索引擎
  • 私服网站建设教程品牌服务推广
  • 图书网站建设实训总结百度霸屏全网推广
  • 如何做国外销售网站个人网站网址
  • 网站制作基本规则百度营销官网
  • 哪个网站可以直接做ppt网络优化是干什么的
  • 在线简历模板网络优化行业的发展前景
  • 别墅室内设计网站百度做推广一般要多少钱
  • wordpress小程序制作企业seo推广的绝密诀窍曝光
  • 门户网站开发语言店铺推广平台有哪些
  • 装修设计网站排行榜线上渠道推广有哪些方式
  • 萧山网站建设争锋网络seo黑帽优化
  • 关于网站开发专业的ppt天天广告联盟
  • 简单的招聘网站怎么做长尾词seo排名
  • 定制型网站怎么做百度推广怎么做免费
  • 网站建设 中国移动武汉seo首页优化报价
  • 免费网站推广文章哪家培训机构好
  • 什么内容能提高网站流量手机百度网盘登录入口
  • 保定做网站电话免费建网站
  • 门户网站是指seo优化分析
  • 开发公司取名字大全福州seo推广优化
  • 网站建设模块一项目三网易搜索引擎
  • 制作网站哪家强加强服务保障满足群众急需i
  • 网站的会员认证怎么做百度一下你就知道官网新闻
  • 江苏省工程建设信息官方网站龙岩网站推广
  • 主播网站建设太原seo团队
  • 南县做网站多少钱合肥网站seo推广
  • 北京软件开发哪家好跨境电商seo是什么意思