当我在我的项目中运行PHPUnit时,我遇到了这个问题。
$供应商/bin/phpunit
PHPUnit 6.5.8 by Sebastian Bergmann and contributors.
Estring(29) "PHPFuzzy\Models\CriterionList"
Time: 59 ms, Memory: 4.00MB
There was 1 error:
1) FuzzyAHPTest::testDefineDecisionMaker
Error: Class 'PHPFuzzy\Models\CriterionList' not found
~/Documents/PHPFuzzy/tests/FuzzyAHPTest.php:10
ERRORS!
Tests: 1, Assertions: 0, Errors: 1.tests/FuzzyAHPtest.php
use PHPFuzzy\Models\{FuzzyNumber as §, DecisionMaker, Criterion, CriterionList, Alternative, AlternativeList};
use PHPFuzzy\{ FuzzyMCDM, Utils };
use PHPUnit\Framework\TestCase;
class FuzzyAHPTest extends TestCase{
public function testDefineDecisionMaker(){
var_dump(CriterionList::class);
$subcriteria1 = new CriterionList([
new Criterion("SubCriteria 1"),
new Criterion("SubCriteria 2"),
new Criterion("SubCriteria 3")
]);
$subcriteria2 = new CriterionList([
new Criterion("SubCriteria 4"),
new Criterion("SubCriteria 5"),
new Criterion("SubCriteria 6"),
new Criterion("SubCriteria 7")
]);
$criteria = new CriterionList([
new Criterion("Criteria 1", $subcriteria1),
new Criterion("Criteria 2", $subcriteria2)
]);
$alts = new AlternativeList([
new Alternative("Kia"),
new Alternative("Nissan"),
new Alternative("Alfa Romeo")
]);
$dm = new DecisionMaker("Decision Maker 1", $criteria);
$AHPSess = FuzzyMCDM::AHP($dm, $alts, $pcml);
d($AHPSess->listPCMCombinations());
// $this->assertEquals($expected->getMatrix(), $a->getMatrix());
}
}in composer.json
{
"name": "bahadircyildiz/phpfuzzy",
"description": "Fuzzy Logic library.",
"keywords": ["fuzzy", "logic", "library"],
"license": "MIT",
"authors": [
{
"name": "Bahadir Can Yildiz",
"email": "mail@bahadircyildiz.com"
}
],
"type": "project",
"require": {
"php": ">=7.0",
"markrogoyski/math-php": "^0.39.0"
},
"require-dev": {
"phpunit/phpunit": "*",
"kint-php/kint": "*"
},
"suggest":{
"ext-operator": "Enables FuzzyNumber class to use arithmetic operators."
},
"autoload": {
"psr-4": {
"PHPFuzzy\\": "src/"
}
},
"autoload-dev":{
"psr-4": {
"PHPFuzzy\\Tests\\": "tests/"
}
},
"conflict": {
"phpunit/php-timer": ">=2"
}
}这是我的文件结构
src/
MCDM/
FuzzyAHP.php
Models/
Alternative.php
AlternativeList.php
Criterion.php
CriterionList.php
...
tests/
FuzzyAHPtest.php
...总之,我可以转储CriterionList类名,但是当我想要创建一个实例时,它找不到这个类。另一方面,Visual代码引用类。
发布于 2018-05-10 05:57:50
我找到了解决办法。Composer没有正确生成自动加载文件。使用composer update解决了这个问题。
https://stackoverflow.com/questions/50250455
复制相似问题