पर केवल त्रुटि होती है जब मैं स्थानीय रूप से अपना कोड चलाता या परीक्षण करता हूं तो मुझे कोई त्रुटि नहीं दिखाई दे रही है। मेरे phpunit
टेस्ट स्वीट गुजरता है:PHP वर्ग नहीं मिला सर्कलसीआई
Time: 11.69 seconds, Memory: 43.50Mb
OK, but incomplete, skipped, or risky tests!
Tests: 149, Assertions: 281, Incomplete: 13.
लेकिन जब मैं ठीक उसी कोड धक्का और CircleCI ठीक उसी परीक्षण आदेश चलता है, यह एक गंभीर त्रुटि के साथ विफल:
.PHP Fatal error: Class 'App\Domain\API\Request\Soap\Json\AbstractJson' not found in /home/ubuntu/TransitScreen/src/Domain/Api/Request/Soap/Json/NJTransit.php on line 10 php ./vendor/bin/phpunit --no-coverage --testsuite=unit returned exit code 255
यहाँ मेरी circle.yml है:
<?php
namespace App\Domain\API\Request\Soap\Json;
use App\Domain\Api\Request\InputApiDataRequest;
use App\Domain\Api\Request\Soap\AsyncSoapClient;
use Assert\Assertion;
class NJTransit extends AbstractJson
{
01:
test:
override:
- php ./vendor/bin/phpunit --no-coverage --testsuite=unit
machine:
php:
version: 5.6.5
environment:
APP_ENV: circleci
फ़ाइल यह संदर्भित है साथ शुरू होता है
पहले मैंने सोचा था कि शायद सर्किलसी बिना किसी नाम या PHP के PHP का पुराना संस्करण चला रहा था, लेकिन जब भी मैं इसे PHP v5.6.5 का उपयोग करने के लिए सेट करता हूं, वही त्रुटि होती है। मैंने टेस्ट अनुक्रम में डेटाबेस डंप जोड़ने का भी प्रयास किया।
यह मेरे लिए भी अजनबी है कि यह त्रुटि होने से पहले कई दर्जन परीक्षण चलाने में सक्षम है। तो मुझे पूरा यकीन है कि सर्किलसीआई पर यह कुछ गलत तरीके से गलत कॉन्फ़िगर नहीं किया गया है।
किसी भी सुझाव पर दो वातावरण में एक ही कोड इतना अलग व्यवहार क्यों करेगा?
अद्यतन 1: मुझे यह प्रश्न मिला जो बहुत ही समान लगता है लेकिन अब तक संगीतकार कमांड को ओवरराइड करने से समस्या का समाधान नहीं हुआ है। Laravel - CircleCI - Fails on phpunit
अद्यतन 2: मैं this question जो काम नहीं कर रहा autoloaging बारे में बात करती मिला ... यह एक नया सिद्धांत चलता है ... शायद वहाँ OSX (मेरे स्थानीय पर्यावरण) और Ubuntu (के बीच केस संवेदनशीलता मतभेद से जुड़े एक समस्या है CircleCI)। यहाँ मेरी composer.json
फ़ाइल के संबंधित खंड है:
"autoload": {
"psr-4": {
"App\\": "src"
}
},
"autoload-dev": {
"psr-4": {
"App\\Test\\": "tests",
"Cake\\Test\\": "./vendor/cakephp/cakephp/tests",
"TestApp\\": "tests/TestApp/src",
"TestApp\\Test\\": "tests/TestApp/tests"
}
},
यदि आपके द्वारा चलाए जा रहे वास्तविक कोड को दिखाते हैं तो लोगों के पास और विचार हो सकते हैं। – jessica
@ जेसिका I ने फ़ाइल के शीर्षलेख को जोड़ा जहां से त्रुटि उत्पन्न होती है। क्या आप किसी और चीज के बारे में सोच सकते हैं जो उपयोगी होगा? मुझे नहीं लगता कि वास्तविक इकाई परीक्षण प्रासंगिक हैं क्योंकि समस्या एक असफलता विफल नहीं है, बल्कि वास्तविक कोड त्रुटि है। – emersonthis