मैं एक परियोजना में एक परीक्षण ढांचे को शामिल करना चाहता हूं जो मैं बना रहा हूं और Enhance PHP पर आया जो मुझे पसंद है लेकिन मुझे "PHP बढ़ाने" के बाद से ऑनलाइन प्रासंगिक जानकारी खोजने में कुछ कठिनाई हो रही है एक सामान्य रूप से इस्तेमाल किया वाक्यांश।"एन्हांस पीएचपी" के साथ शुरू करना
क्या कोई इस ढांचे के साथ काम करता है जो मुझे कुछ सहायक मार्गदर्शिका की ओर इंगित करने में सक्षम हो सकता है? क्या आपने यूनिट टेस्ट फ्रेमवर्क के साथ काम किया है जो आपको लगता है कि आश्चर्यजनक रूप से बेहतर है?
अग्रिम धन्यवाद।
Gotzofter के जवाब में, इस वर्ग का परीक्षण किया जा रहा है: ExampleClass के लिए मेरे निर्माता पर
<?php
include_once('EnhanceTestFramework.php');
class ExampleClass
{
private $OtherClass;
function __construct($mock = null)
{
if ($mock == null)
$this->OtherClass = new OtherExampleClass();
else
$this->OtherClass = $mock;
}
public function doSomething()
{
return $this->OtherClass->getSomething(1, 'Arg2');
}
}
class OtherExampleClass
{
public function getSomething()
{
return "Something";
}
}
class ExampleClassTests extends \Enhance\TestFixture
{
public function setUp()
{
}
public function tearDown()
{
}
public function verifyWithAMock()
{
$mock = \Enhance\MockFactory::createMock('OtherExampleClass');
$mock->addExpectation(
\Enhance\Expect::method('getSomething')
->with(1, 'Arg2')
->returns('Something')
->times(1)
);
$target = new ExampleClass($mock);
$result = $target->doSomething();
\Enhance\Assert::areIdentical("Something", $result);
$mock->verifyExpectations();
}
}
\Enhance\Core::runTests();
देखो।
क्योंकि एनएनजी-पीएचपी साइट उदाहरण नए उदाहरण क्लास ($ नकली) को कॉल करके $ मॉक ऑब्जेक्ट इंजेक्ट करता है, इसलिए मुझे इनपुट मापदंड के रूप में $ mock को संभालने के लिए अपना उदाहरण क्लास कन्स्ट्रक्टर बदलने के लिए मजबूर होना पड़ता है।
क्या मुझे इसे उन सभी वर्गों के लिए संभालना है जिन्हें मैं ढांचे के साथ इकाई परीक्षण के अधीन रखना चाहता हूं?
धन्यवाद।
[enh-php.com] (http://www.enhance-php.com) में एक [त्वरित प्रारंभ मार्गदर्शिका] है (http://www.enhance-php.com/Content/Quick-Start-Guide /) और ऐसा लगता है कि उनके पास [सभी प्रमुख विशेषताओं पर सभ्य दस्तावेज] है (http://www.enhance-php.com/Content/Documentation/)। आप उससे परे क्या देख रहे हैं? –
[PHPUnit] (http://phpunit.de) defacto इकाई परीक्षण ढांचा है। टीबीएच मैंने कभी भी उत्साह के बारे में नहीं सुना है (यह एक सस्ता शूट न करें, केवल ईमानदार होना)। –
@ कोलिन - शायद मैं सिर्फ नकली उपयोग को समझ नहीं रहा हूं। उस गाइड में दिए गए निर्देशों के बाद मुझे उन परिणामों को नहीं मिल रहा है जिनकी मुझे उम्मीद है। मैं मूल पोस्ट – baiano