0
我需要帮助,因为我不是PHPUNIT的专家。PHPUNIT - 返回实例化类2的同一个实例
我觉得,当我在我的测试类实例化了我两次验证,即PHPUnit的忽略第二个实例...
这里是我的代码: ```PHP
<?php
namespace Tests\Validation;
use PHPUnit\Framework\TestCase;
use Validation\Validator;
class ValidatorTest extends TestCase
{
public function testIsNotValid()
{
$_POST['input_test'] = '1';
$validator = new Validator();
$validator->rules([
'input_test' => [
'alpha '=> true, // "$_POST['input_test']" must be alpha
],
]);
// "isValid()" must return "false", and PHPUNIT returns "false"
$this->assertFalse($validator->isValid());
// "count($validator->getErrors())" Must return "1", and PHPUNIT returns "1"
$this->assertEquals(1, count($validator->getErrors()));
}
public function testIsValid()
{
$_POST['input_test'] = 'aaa';
$validator = new Validator();
$validator->rules([
'input_test' => [
'alpha' => true, // "$_POST['input_test']" must be alpha
],
]);
// "isValid()" must return "true", but PHPUNIT returns "false"
$this->assertTrue($validator->isValid());
// "count($validator->getErrors())" must return "0", but PHPUNIT returns "1"
$this->assertEquals(0, count($validator->getErrors()));
}
}
`` ` 所以我的测试“testIsValid()”无法正常工作。另一方面,如果我删除测试“testIsNotValid()”,测试“testIsValid()”开始工作...
任何人都有想法吗?
非常感谢。
请提供更多的信息。你得到了什么产出,你期望什么?你可以显示'rules()'和'isValid()'方法的代码吗? – Timurib
我在第二个答案中发布了这些方法。我的第一个答案的评论中解释了我所得到的和我所期望的。谢谢 – stephweb