मैं आने वाले यूआरएल को पार्स करने के लिए कुछ PHP कोड लिख रहा हूं। यह $_SERVER
और $_GET
जैसे PHP ग्लोबल्स पर भारी निर्भर करता है। मैं PHPUnit इकाई परीक्षण setUp()
फ़ंक्शन में इसे मैन्युअल रूप से सेट करने की सोच रहा हूं। क्या ऐसा करने का कोई बेहतर तरीका है?
12
A
उत्तर
11
एक विचार $ _SERVER और $ _GET को सीधे उन्हें एक्सेस करने के बजाय कक्षाओं में लपेटना होगा, ताकि आपको उन पर भरोसा न करें। आप आम ढांचे में अक्सर इस दृष्टिकोण को देखते हैं। इस तरह आप सुपरग्लोबल्स की स्थिति को सेट किए बिना आसानी से अनुरोध को दबा सकते हैं या नकल कर सकते हैं।
कृपया यह भी देखना Global State in the PHPUnit Manual
संबंधित मुद्दे
- 1. $ _SERVER ["PHP_AUTH_USER"] और $ _SERVER ["PHP_AUTH_PW"] क्यों सेट नहीं हैं?
- 2. php में superglobal चर बनाते हैं?
- 3. $ _SERVER ['REQUEST_URI'] और $ _GET ['q'] के बीच क्या अंतर है?
- 4. आप कैसे परीक्षण करते हैं कि Backbone.js विचार ठीक से अनबाउंड() और नष्ट हो गए हैं()?
- 5. PHPUnit परीक्षण बाइनरी डेटा अपलोड
- 6. PHPUnit परीक्षण वास्तविक उदाहरण
- 7. PHPUnit
- 8. सॉस .io phpunit सेलेनियम परीक्षण
- 9. इकाई परीक्षण सेटअप और टियरडाउन
- 10. PHPUnit का उपयोग कर Symfony2 में डेटाबेस-भारी इकाई परीक्षण कैसे सेट करें?
- 11. PHPunit में परीक्षण कैसे छोड़ें?
- 12. PHPUnit :: सेट सेट और कुकीज़ प्राप्त करने का तरीका कैसे परीक्षण किया जा सकता है?
- 13. PHPUnit डेटाबेस परीक्षण
- 14. phpunit परीक्षण xml आउटपुट
- 15. $ _GET चर सेट करने के लिए कैसे करें
- 16. d3js - अल्बर्स प्रोजेक्शन को ठीक से कैसे सेट करें?
- 17. रैम में django vars
- 18. क्यूटी यूनिट परीक्षण सेटअप
- 19. कोहाना, .htaccess, और $ _GET
- 20. PHP संरचना - इंटरफेस और stdClass vars
- 21. PHPUnit
- 22. phpunit पुनरारंभ परीक्षण यादृच्छिक रूप से
- 23. googletest: कैसे सेटअप करें?
- 24. यह निर्धारित करते हैं $ _SESSION superglobal पीएचपी
- 25. $ _GET और यूआरएल PHP
- 26. जूनिट एकाधिक सेटअप और एकल परीक्षण
- 27. परीक्षण कोड PHPUnit नकली वस्तुओं
- 28. _GET
- 29. PHPUnit के साथ अपवाद परीक्षण इकाई कैसे करें?
- 30. Symfony 2 डब्ल्यू/PHPUnit 3.6: परीक्षण प्रयोजनों
पर अध्याय आप में से एक उदाहरण देता हूँ सकता है कि कैसे एक आवरण के बिना सेटअप superglobals के राज्य के लिए? (भले ही यह बदबूदार है) – JayIsTooCommon
@JayIsTooCommon आप बस उन्हें अपने परीक्षण में सेट करें, उदा। $ _SERVER ["foo"] = 42 अगर मुझे सही याद आती है। वास्तविक परीक्षण विधि में या सेटअप() में या setupbeforeclass() में ऐसा कर सकते हैं (यदि वह आज भी मौजूद है) – Gordon
आह ठीक है, तो मुझे कुछ और गलत करना होगा। धन्यवाद :) – JayIsTooCommon