我通过PHAR ( https://phpunit.de/getting-started/phpunit-8.html )安装了https://phpunit.de/getting-started/phpunit-8.html,并在Windows 10中将PHPUnit添加到我的系统变量中。
现在,我试图在CLI上使用phpunit运行一个测试用例,但是PHPUnit显示了No tests executed!。关键是我有5种测试方法。
我想测试的课程是:
class Calculator
{
/**
* @assert (0, 0) == 0
* @assert (0, 1) == 1
* @assert (1, 0) == 1
* @assert (1, 1) == 2
* @assert (1, 2) == 4
*/
public function add($a, $b)
{
return $a + $b;
}
}发现地点:https://netbeans.org/kb/docs/php/phpunit.html
我的测试用例是:
require_once 'PHPUnit/Autoload.php';
use PHPUnit\Framework\TestSuite;
class CalculatorTest extends TestSuite {
//class CalculatorTest extends PHPUnit_Framework_TestCase {
/**
* @var Calculator
*/
protected $object;
/**
* Sets up the fixture, for example, opens a network connection.
* This method is called before a test is executed.
*/
protected function setUp(): void {
$this->object = new Calculator;
}
/**
* Tears down the fixture, for example, closes a network connection.
* This method is called after a test is executed.
*/
protected function tearDown(): void {
}
/**
* Generated from @assert (0, 0) == 0.
*
* @covers Calculator::add
*/
public function testAdd(): void {
$this->assertEquals(0, $this->object->add(0, 0));
}
/**
* Generated from @assert (0, 1) == 1.
*
* @covers Calculator::add
*/
public function testAdd2(): void {
$this->assertEquals(1, $this->object->add(0, 1));
}
/**
* Generated from @assert (1, 0) == 1.
*
* @covers Calculator::add
*/
public function testAdd3(): void {
$this->assertEquals(1, $this->object->add(1, 0));
}
/**
* Generated from @assert (1, 1) == 2.
*
* @covers Calculator::add
*/
public function testAdd4(): void {
$this->assertEquals(2, $this->object->add(1, 1));
}
/**
* Generated from @assert (1, 2) == 4.
*
* @covers Calculator::add
*/
public function testAdd5(): void {
$this->assertEquals(4, $this->object->add(1, 2));
}
}当我在CLI中键入phpunit -v时,我会看到以下内容:
C:\wamp64\www\test>phpunit -v
PHPUnit 8.0.6 by Sebastian Bergmann and contributors.
Usage:
phpunit [options] UnitTest [UnitTest.php]
phpunit [options] <directory>
Code Coverage Options:
--coverage-clover <file> Generate code coverage report in Clover XML format
--coverage-crap4j <file> Generate code coverage report in Crap4J XML format
--coverage-html <dir> Generate code coverage report in HTML format
--coverage-php <file> Export PHP_CodeCoverage object to file
--coverage-text=<file> Generate code coverage report in text format [default: standard output]
--coverage-xml <dir> Generate code coverage report in PHPUnit XML format
--whitelist <dir> Whitelist <dir> for code coverage analysis
--disable-coverage-ignore Disable annotations for ignoring code coverage
--no-coverage Ignore code coverage configuration
--dump-xdebug-filter <file> Generate script to set Xdebug code coverage filter我的系统:
Windows 10
WAMP
php 7.2.14
PHPUnit 8.0.6
Netbeans version 8.2 (Netbeans PHPUnit plugin installed through Tools > Plugins. Version: 0.26.2)
Installation method: PHP Archive (PHAR) 有人能为我指出解决这个问题的正确思路吗?
为什么PHPUnit告诉我没有测试被执行?
我做错什么了?
发布于 2019-03-28 16:03:11
对@assert注释的支持很久以前就被删除了。PHPUnit/Autoload.php也是几年前被移除的。
您想要阅读官方的快速入门指南(而不是提供不支持最新版本的PHPUnit的"IDE“供应商的过时信息)。
https://stackoverflow.com/questions/55401857
复制相似问题