断言 var 是 phpunit 中没有特定字符的非空字符串
我想断言变量是phpunit中的(非空白)字符串,但我不想断言字符串必须与任何确切的字符串匹配。
例如,我想提取一个用户名,并确保我成功获得了一些非空白用户名,但我并不关心我得到了哪个用户名。
我可以很容易地断言它是一个非空变量,或者它是一个与某个字符串完全匹配的字符串,或者断言var是一个没有phpunit帮助的字符串:
$this->assertNotEmpty($username);
$this->assertSame('myusername', $username);
$this->assertTrue(is_string($username));
这些都接近我需要的,使用is_string实际测试正确的条件,但是自己做is_string还不够好,因为当测试失败时,我再也无法获得有用的,信息丰富的消息,而不是告诉我实际返回了什么类型的值,错误消息变得无用:
Failed asserting that false is true.
那么,如何使用 phpunit 的断言系统断言 var 是字符串类型且非空的呢?