如何在PHPUnit中测试方法是否抛出了异常?
大家好!我刚开始学习PHPUnit,正在为我的项目编写测试。我有一个方法,在特定条件下应该抛出异常,例如,如果传入了无效参数,则抛出`InvalidArgumentException`。
问题是我不知道如何正确编写assert来检查异常是否被抛出。我试过将方法调用包装在`try...catch`中,然后使用`$this->assertTrue($caught)`,但这看起来很笨拙,并且没有利用PHPUnit的功能。
以下是我的代码示例:
```php
class Calculator {
public function divide($a, $b) {
if ($b == 0) {
throw new \InvalidArgumentException('Division by zero.');
}
return $a / $b;
}
}
```
以及我的测试,它以一种不美观的方式检查异常:
```php
public function testDivisionByZero() {
$calculator = new Calculator();
$caught = false;
try {
$calculator->divide(10, 0);
} catch (\InvalidArgumentExce