ArgumentCountError:参数太少而不能起作用



我正在单独测试我的模型,并不断得到此错误。我想也许这是我的断言函数,但我想检查我创建一个新实例的列表是否与发现的列表相同。这是我的模型:

class ArchiveShoppingListModel
{
/**
* @var string
*/
private string $list;
/**
* ArchiveShoppingListModel constructor.
*
* @param string $list
*/
public function __construct(string $list)
{
$this->list = $list;
}
/**
* @return string
*/
public function getList(): string
{
return $this->list;
}
}

这是我的测试:

class ArchiveShoppingListModelTest extends TestCase
{
/**
* @param string $list
* @return void
*/
public function test(string $list): void
{
$model = new ArchiveShoppingListModel('groceries');
$this->assertSame($list, $model->getList());
}
}

为什么在单元测试中将$list作为参数?如果你想通过单元测试来检查,你最好使用

public function test(): void
{
$list = ....; // the list you expect
$model = new ArchiveShoppingListModel('groceries');
$this->assertSame($list, $model->getList());
}

最新更新