2011-01-07 11 views
8

संभव डुप्लिकेट शुरू करने के लिए:
Simple test vs PHPunitPHP में क्या इकाई परीक्षण

मैं सॉफ्टवेयर विकास पर अच्छी प्रथाओं के लिए नया हूँ। मुझे उपयोग करने के लिए चुड़ैल परीक्षण इकाई ढांचे के साथ पता होना चाहिए। मैंने देखा है कि कुछ लोग PHPUnit का उपयोग करते हैं और अन्य SimpleTest का उपयोग करते हैं। शुरुआत के लिए मुझे किस पैकेज का चयन करना चाहिए?

शुभकामनाओं सहित,

+2

केवल उद्देश्य निर्णय मदद मैं पेशकश कर सकते हैं कि PHPUnit UnitTesting में वास्तविक मानक है भूल गए हैं। – Gordon

+0

@Gordon, यकीन नहीं मैं अब तक के रूप में कहने के लिए "वास्तविक मानक" जाना होगा। सरलता अभी भी बहुत अच्छी तरह से उपयोग की जाती है भले ही विकास बंद हो गया है। –

+2

@ नाथन जिसके द्वारा मुझे आश्चर्य है? जब मैं सम्मेलनों में भाग लेता हूं तो मैं कभी भी सरलतम की वकालत करने वाले किसी भी स्पीकर को नहीं देखता। लेकिन हमेशा लोग लोग दिखाते हैं कि PHPUnit के साथ चीजें कैसे करें। – Gordon

उत्तर

0

मैं SimpleTest शुरू करने के लिए आसान है, और मेरी प्रयोजनों के लिए प्रयोग करने योग्य पाया। अब के लिए कोई बड़ा मुद्दा नहीं मिला। मैनुअल/वेबसाइट थोड़ा उलझन में है, लेकिन कुछ उदाहरण-खोज के साथ यह पर्याप्त है।

बहुत पेशेवर महसूस नहीं करता है, लेकिन जैसा कि आप शुरुआत कर ढांचे के लिए पूछ रहे हैं, हर तरह से, कोशिश है कि एक :)

0

यहाँ एक अच्छा पढ़ा है ... यह SimpleTest और इस बेहतर है के साथ शुरू करने के लिए का उपयोग करता है PHPUnit से ...

Newbie's Guide to Unit testing

+0

असल में, नहीं। यह PHPUnit पर teases और फिर SimpleTest के माध्यम से चलाता है क्योंकि यह "एक बहुत ही आसान परीक्षण ढांचा" है। – Adam

+0

हाँ .. मेरा मतलब है कि यह "सरलतम" का उपयोग करता है :) –

2

SimpleTest समझ थोड़ा आसान है, लेकिन PHPUnit (मेरी राय में कम से कम), इसलिए यदि आप सीखने और एक रूपरेखा का उपयोग शुरू करना चाहते हैं, एक साथ शुरू सबसे अच्छा है, आप टीडीडी में मास्टर होने पर उपयोग करने जा रहे हैं। यह न देखें कि यह आसान या कठिन है, क्योंकि यदि आप उदाहरण के लिए सरलतम से शुरू करते हैं, तो आप ज़ेंड फ्रेमवर्क का उपयोग शुरू करते हैं क्योंकि आपका बॉस आपको बताता है, आपको PHPUnit को ZF के साथ उपयोग करना होगा। तो अपने भविष्य के बारे में सोचें, क्योंकि सीखने में आसान फ्रेमवर्क को सबसे अच्छा नहीं होना चाहिए, सामान्य रूप से ढांचे को बेहतर समझना कठिन होता है।

इसके अलावा उनके संशोधन पर एक नज़र डालें, देखें कि कौन सा बेहतर बनाए रखा गया है।

5

मैंने सरलतम से शुरुआत की क्योंकि सीखने की अवस्था उतनी ही प्रतीत नहीं हुई थी। लेकिन यह बनाए रखा नहीं है, और PHP5.3 में चेतावनियों का भार लाता है, साथ ही मैं जो कुछ भी चाहता था उसे करने में सक्षम नहीं हूं। मुझे अंततः PHPUnit पर स्विच करना पड़ा, जो कि मेरे परीक्षणों को बदलने में एक लंबी प्रक्रिया थी। अगर मैं केवल PHPUnit के साथ पहली जगह शुरू कर दूंगा!

+0

और मुझे अभी भी विश्वास नहीं है कि मेरा परीक्षण कवरेज PHPUnit के साथ 100% है, जबकि अगर मैं शुरुआत से PHPUnit के साथ टीडीडी का उपयोग करता हूं तो यह होगा। –

25

मैं वास्तव में वास्तव में परेशान हूं कि सरलतम अभी भी phpunit का विकल्प माना जाता है। हो सकता है कि मैं सिर्फ गलत जानकारी प्राप्त कर रहा हूं लेकिन जहां तक ​​मैंने देखा है:

  • PHPUnit मानक है; अधिकांश ढांचे इसका उपयोग करते हैं (जैसे ज़ेंड फ्रेमवर्क, केक, आगावी, यहां तक ​​कि सिम्फनी phpunit के लिए सिम्फनी 2 में अपना स्वयं का फ्रेमवर्क छोड़ रहा है)।
  • PHPUnit प्रत्येक PHP आईडीई (ग्रहण, नेटबीन, ज़ेंड स्टुइड, PHPStorm) में एकीकृत है और अच्छी तरह से काम करता है।
    • Simpletest पीएचपी 5.1 (यानी इतने पुराने हैं कि यह sourceforge पर है) और कुछ नहीं ग्रहण एक्सटेंशन है।
  • PHPUnit हर continious एकीकरण सर्वर के साथ ठीक काम करता है के बाद से यह कोड कवरेज और परीक्षण रिपोर्ट के लिए सभी मानक लॉग फाइल आउटपुट।
    • सरलतम नहीं है। हालांकि, इससे शुरू करने में कोई बड़ी समस्या नहीं है, जब आप "केवल परीक्षण" बंद कर देते हैं और सॉफ्टवेयर विकसित करना शुरू करते हैं (हां वह कथन उत्तेजक है :) इसे बहुत गंभीरता से न लें)।
  • PHPUnit सक्रिय रूप से बनाए रखा गया है, स्थिर है और हर कोडबेस, हर परिदृश्य और हर तरह से आप अपने परीक्षण लिखना चाहते हैं।
    • Simpletest, unmaintained पुरानी हो चुकी है और PHP 5.3 (एक साल पहले जारी किया गया)
  • (व्यक्तिपरक) PHPUnit provides much nicer कोड कवरेज रिपोर्ट than Simpletest
      PHPUnit के साथ
    • साथ अच्छी तरह से काम नहीं करता है आप भी इन मिलता है अपने आईडीई (Netbeans, ग्रहण, ...)
अंदर रिपोर्ट 210

मैं Simpletest के पक्ष में कोई तर्क को देखने के लिए अभी तक है। यह स्थापित करने के लिए के बाद से PHPUnit नाशपाती माध्यम से उपलब्ध है सरल भी नहीं है:

pear channel-discover pear.phpunit.de 
pear install phpunit/PHPUnit 

और "पहले टेस्ट" बहुत ज्यादा एक ही लग रहा है।

सब कुछ आप परीक्षण करने के लिए PHPUnit एक समाधान है जाएगा और आप काफी कहीं भी मदद को खोजने के लिए सक्षम हो जाएगा चाहते हैं

(अतः, freenode पर #phpunit irc चैनल, काफी हर php डेवलपर;))

कृपया सही करें मुझे अगर मैं गलत कुछ कहा गया है या कुछ और :)

+1

+1 बहुत अच्छे तर्क! – Gordon

+2

मैं सहमत हूं, बहुत अच्छा है। मुझे लगता है कि अपील क्या है कि यह किसी ऐसे व्यक्ति के लिए आसान लगती है जो PHP यूनिट परीक्षण में शुरू हो रही है। और यह अगर तुम नाशपाती उपयोग नहीं कर रहे स्थापित करने के लिए सरल है (जो, मानो या न मानो, कुछ लोगों को नहीं है): तुम बस एक ज़िप डाउनलोड करना और खोलना। –

+0

@ नाथन: सहमत हैं, अगर आप नाशपाती इंस्टॉलर का उपयोग नहीं करते हैं (हम काम पर ऐसा नहीं करते हैं) तो phpunit वास्तव में एक प्रमुख पिटा हो सकता है यदि आप नहीं जानते कि क्या देखना है :)। खासकर जब से 3.5 – edorian

संबंधित मुद्दे