আমি ভাবছিলাম যে এই দুটি জিনিসগুলির অভিজ্ঞতা আছে এমন কেউ যদি তাৎপর্য সম্পর্কে কিছুটা আলোকপাত করতে পারে পার্থক্য সম্পর্কে ?
প্রত্যেকের নির্দিষ্ট কোনও শক্তি যা এটি কোনও নির্দিষ্ট ক্ষেত্রে উপযুক্ত করে তোলে?
আমি ভাবছিলাম যে এই দুটি জিনিসগুলির অভিজ্ঞতা আছে এমন কেউ যদি তাৎপর্য সম্পর্কে কিছুটা আলোকপাত করতে পারে পার্থক্য সম্পর্কে ?
প্রত্যেকের নির্দিষ্ট কোনও শক্তি যা এটি কোনও নির্দিষ্ট ক্ষেত্রে উপযুক্ত করে তোলে?
উত্তর:
এই প্রশ্নটি বেশ তারিখযুক্ত তবে এটি এখনও ট্র্যাফিক পাচ্ছে এবং উত্তর দিচ্ছে যদিও আমি আমার বক্তব্যটি এখানে আবার উল্লেখ করছি তাই আমি ইতিমধ্যে এটি আরও কিছু (নতুন) প্রশ্নের উপর দিয়েছি।
আমি সত্যিই আশ্চর্য হয়ে গেছি যে সিম্পল টেস্টকে এখনও phpunit এর বিকল্প হিসাবে বিবেচনা করা হয়। হতে পারে আমি কেবল ভুল তথ্য দিয়েছি তবে যতদূর আমি দেখেছি:
web interface to phpunit tests
।আমি এখনও সিম্পল টেস্টের পক্ষে কোনও যুক্তি দেখতে পাইনি। পিএইচপিউইনাইট নাশপাতি মাধ্যমে উপলব্ধ যেহেতু এটি ইনস্টল করা এমনকি সহজ নয়:
pear channel-discover pear.phpunit.de
pear install phpunit/PHPUnit
এবং "প্রথম পরীক্ষা" দেখতে দেখতে অনেকটা একইরকম।
এর মতো PHPUnit 3.7
এটা ইনস্টল করতে আরও সহজ শুধু ব্যবহার করে এটিPHAR Archive
wget http://pear.phpunit.de/get/phpunit.phar
chmod +x phpunit-3.7.6.phar
বা উইন্ডোজের জন্য কেবল ফার ডাউনলোড এবং চলমান:
php phpunit-.phar
অথবা সমর্থিত সুরকার ব্যবহারের সময় ইনস্টল করার উপায়গুলি
"require-dev": {
"phpunit/phpunit": "3.7.*"
}
আপনার রচয়িতা। জসন।
পিএইচপিউনিটকে যাচাই করতে চান তার জন্য একটি সমাধান থাকবে এবং আপনি যে কোনও জায়গায় সাহায্য পেতে সক্ষম হবেন (এসও, ফ্রেইনোডে # পিপুনিট রিক চ্যানেল, প্রতিটি পিএইচপি বিকাশকারী;))
আমি যদি কিছু ভুল বলেছি বা কিছু ভুলে গেছি তবে দয়া করে আমাকে সংশোধন করুন :)
ভিডিও: http://conferences.phpnw.org.uk/phpnw11/schedule/sebastian-bergmann/
স্লাইডস: http://www.slideshare.net/sebastian_bergmann/the-php-testers-toolbox-osi-days-2011
এটি আটুমের মতো স্টাফের উল্লেখ করে যা এটির স্ব বলে: "পিএইচপি-র জন্য একটি সাধারণ, আধুনিক এবং স্বজ্ঞাত ইউনিট পরীক্ষার কাঠামো!"
আমি এই উত্তরটি মূলত জানুয়ারীতে লিখেছি। ২০১১ যেখানে আমার কোনও পিএইচপি পরীক্ষার প্রকল্পের সাথে কোনও সম্পর্ক নেই। তার পর থেকে আমি পিএইচপিউইনাইটের একজন সহযোগী হয়েছি।
include
সরল টেস্ট। পিএইচপি ফাইলগুলি ইনগ্রেট করার চেয়ে অনেক বেশি মুশকিল (যেমন অন্যরা ব্যাখ্যা করেছেন)) আউট নির্মাণের পেশাদারী প্রোগ্রামারদের নিজেদের পরীক্ষা পরিবেশ PHPUnit জন্য বীট কঠিন শোনাচ্ছে কিন্তু যদি পিএইচপি-ভিত্তিক ওপেন সোর্স অ্যাপ্লিকেশন মধ্যে একটি পরীক্ষামূলক ব্যবস্থা একীভূত যেখানে "ডেভেলপার" অ্যাপের জন্য শ্রেষ্ঠ সময়ে হতে পারে (আমি কি কল) "পেশাগত প্রোগ্রামারদের" তারপর সিম্পিস্টেস্টের সরলতার যাহাই হউক না কেন, আমার কাছে আসল আবেদন রয়েছে। FWIW।
আমি এখনই পিএইচপিউইনিটকে প্রাধান্য দিই, তবে যখন আমি শুরু করলাম তখন সিম্পল টেস্ট ব্যবহার করেছি কারণ আমার কাছে সর্বদা কমান্ড লাইনে অ্যাক্সেস ছিল না। সিম্পেস্টেস্ট দুর্দান্ত, তবে আমার মতে, পিএইচপিউনিটের উপর এটির সত্যিকারের জিনিসটি কেবল ওয়েব রানার।
আমি পিএইচপিউনিট পছন্দ করার কারণগুলি হ'ল এটি পিএইচপি বিকাশকারী অন্যান্য সরঞ্জামগুলির সাথে যেমন ফিং (যেমন সিম্পেল টেস্ট করে), পিএইচপিউন্ডারকন্ট্রোল এবং জিঙ্কের সাথে একীভূত হয় । সংস্করণ 3.0 হিসাবে এটি উপহাস করে সমর্থন করেছে, সক্রিয়ভাবে বিকাশিত হচ্ছে, এবং ডকুমেন্টেশন দুর্দান্ত।
নিজের জন্য এই প্রশ্নের উত্তর দেওয়ার একমাত্র উপায় হ'ল কিছু সময়ের জন্য চেষ্টা করে দেখুন, এবং আপনার স্টাইলটি আরও ভাল ফিট করে তা দেখুন।
সম্পাদনা: ফিং এখন সরল টেস্টের সাথেও সংহত করে।
আমি তবে সিম্পল টেস্ট ইনস্টল করার পদ্ধতিটি সহজেই বুঝতে পারি।
(যতদূর আমি পিএইচপিউনিতের জন্য নির্দেশাবলী মনে করতে পারি "" এটি পিয়ারের মাধ্যমে ইনস্টল করুন এবং এটি অন্য কোনও উপায়ে কীভাবে করা যায় সে সম্পর্কে আমরা কোনও নির্দেশনা দেব না) "এর লাইনে কিছু বলেছে) দেখুন:
জন্য SimpleTest শুধু এটি ডাউনলোড করুন এবং আপনার কোড থেকে এটা নির্দেশ।
তাই সিমপ্লেস্টেস্ট আমার পক্ষে জিতেছে।
ব্যাপলেডের পিছু পিএনপি 3 বনাম সিম্পেস্টেস্টে একটি দুর্দান্ত নিবন্ধ রয়েছে ।
গৃহীত উত্তরে উল্লিখিত পয়েন্টগুলির অর্ধেকটি কেবল সত্য নয়:
সিম্পিস্টেস্ট আছে
অবক্ষয়:
আমি সিম্পল টেস্টটি পিএইচপিউনিট সেট আপ করা থেকেও সহজ ছিল। শুধু এটি এক্সট্রাক্ট করুন এবং আপনি যেতে ভাল। এর সুবিধা হ'ল যদি আপনি একাধিক মেশিনে কাজ করছেন, যেহেতু আপনি পুরো টেস্টিং ফ্রেমওয়ার্কটি আপনার উত্স কোডের মতো একইভাবে সঞ্চয় করতে পারেন এবং এর মাধ্যমে আপনি জানেন যে আপনি একই ফ্রেমওয়ার্ক কোডটি ব্যবহার করছেন। বিশেষ করে যদি আপনি এটি কোনও উপায়ে পরিবর্তন করেন।
সুতরাং, আমি বলব যে সিম্পল টেস্টের একটি শক্তি এটি খুব হালকা ওজন এবং বহনযোগ্য।
সিম্পেস্টেস্ট খুব সাধারণ এইচটিএমএল জিইউআই সহ জাহাজও সরবরাহ করে, যা আপনি চাইলে প্রসারিত করা বেশ সহজ। যতদূর আমি জানি, পিএইচপিউইনিট কোনও এইচটিএমএল জিইউআই অন্তর্ভুক্ত করে না, তবে জিওআই রয়েছে: ডাউনলোডের জন্য উপলব্ধ, যেমন কুল ।
ভাল আমি একটি পিএইচপিউইনিত ওয়েব ভিত্তিক ইউআই টেস্ট কেস রানার তৈরি করেছিলাম এবং সোর্সফোর্জে উপলব্ধ করেছি। এজ্যাক্স ব্যবহার করে এবং সোর্সফোরে এটির শট পরীক্ষা করতে চাইলে পাশাপাশি বেশ দুর্দান্ত ইন্টারফেসও রয়েছে। প্রকল্পের নাম phpunitwebui এবং ওয়েবসাইটটি http://phpunitwebui.sourceforge.net/
যেমন এটি চিহ্নিত করা হয়েছে, এটি বেশিরভাগ ক্ষেত্রে পছন্দ হিসাবে পছন্দ করা হয়, কারণ উভয়ই এর জন্য আপনি যে পরীক্ষাগুলি লিখেছেন তা চালাবেন এবং ফলাফলগুলি পুনরায় রিপোর্ট করবেন।
সিমপ্লেস্টেস্ট ওয়েব ইউআই খুব দরকারী তবে এটি কখনও কখনও জটিল হয়ে উঠতে পারে। আমার বর্তমান প্রকল্পে, আমার অ্যাপ্লিকেশনটিকে (একটি এপিআই) ওয়েব ইন্টারফেসের সাথে কাজ করতে (অ্যাপাচি সঠিকভাবে সেট আপ করতে, ফাইলগুলি পাবলিক_এইচটিএমএল রুটে ইত্যাদি অনুলিপি করার জন্য) আরও বেশি কাজ করাতে হবে put গ্রহন কর্মক্ষেত্র থেকে কেবল পিপুনিট চালানো। অতএব আমি পিএইচপিউনিট নির্বাচন করি। এছাড়াও, পিয়ারের ব্যবহার একটি বড় প্লাস ছিল যেহেতু আপনাকে ম্যানুয়ালি আপডেটগুলি ট্র্যাক করার দরকার নেই। কেবল pear upgrade
একবারে একবার চালান এবং পিএইচপিউইনিট আপ-টু-ডেট রাখে।
এটি অত্যন্ত নৈমিত্তিক পিএইচপি বিকাশকারী দৃষ্টিকোণ থেকে:
পিএইচপিউইনিটকে ধরতে আমার দু'দিন সময় লেগেছিল, বেশিরভাগই আমি শেষ পর্যন্ত ছেড়ে দিয়েছিলাম এমন এক্লিপসের অধীনে ডিবাগ করার চেষ্টা করে।
Eclipse এর অধীনে ডিবাগ সহ সিমপ্লেস্টেস্ট সেটআপ করতে আমার দুই ঘন্টা সময় লেগেছিল।
ভবিষ্যতে আমি সিমপ্লেস্টেস্টের ঘাটতিগুলি খুঁজে পেতে পারি তবে এখন পর্যন্ত এটি আমার যা প্রয়োজন তা ঠিকভাবে করেছে: পরিস্থিতিটির দ্রুত স্ন্যাপশটের জন্য টেস্টক্লাস, মক অবজেক্টস, টেস্ট-কোড ডিবাগিং এবং ওয়েব ইন্টারফেস।
আবার: এটি খুব নৈমিত্তিক পিএইচপি ব্যবহারকারীর দৃষ্টিকোণ থেকে (এমনকি বিকাশকারীও নয় :-)
আমি কিছুক্ষণ সিম্পল টেস্ট পরীক্ষা করে দেখিনি, গতবার এটিতে একটি গ্রহন প্লাগইন ছিল যা আমার জন্য একটি বড় কারণ, তবে এটি দীর্ঘদিন আপডেট হয়নি। সেবাস্তিয়ান বার্গম্যান এখনও পিএইচপিউইনিতে খুব সক্রিয়ভাবে কাজ করছে, তবে এটিতে এখনও গ্রহণের জন্য একটি ভাল প্লাগইন নেই - তবে এটি নতুন জেন্ড স্টুডিওর অন্তর্ভুক্ত।
এই প্রশ্নটি পুরানো, তবে আমি আমার অভিজ্ঞতা যুক্ত করতে চাই: পিএইচপিউইনিট এখন মানক বলে মনে হচ্ছে, তবে আপনি যদি এমন কোনও উত্তরাধিকার ব্যবস্থার সাথে কাজ করেন যা প্রচুর এবং প্রচুর বৈশ্বিক ভেরিয়েবল ব্যবহার করে, আপনি যেতে যেতে আটকাতে পারেন। দেখে মনে হচ্ছে পিএইচপিউইনাইটে গ্লোবাল ওয়ারগুলির সাথে পরীক্ষা করার কোনও ভাল উপায় নেই, আপনার মনে হয় আপনার ভেরিয়েবলগুলি $ গ্লোবালগুলির মাধ্যমে সেট করতে হবে যা আপনার কাছে সর্বত্র বিশ্বব্যাপী ভেরিয়েবল সেট করার জন্য প্রচুর ফাইল রয়েছে G ঠিক আছে কেউ কেউ বলতে পারেন যে সমস্যাটি লেগ্যাসি সিস্টেমে রয়েছে তবে এর অর্থ এই নয় যে আমরা এই ধরনের সিস্টেমে পরীক্ষা করতে পারি না। সিম্পিস্টেস্টের সাথে এ জাতীয় জিনিস সহজ। আমি মনে করি যদি পিএইচপিউইনিট আমাদের কোনও ফাইলকে বিশ্বব্যাপী অন্তর্ভুক্ত করার অনুমতি দেয়, কোনও শ্রেণি / ফাংশনের সুযোগের মধ্যে না হয় তবে এটি খুব একটা সমস্যাও হবে না।
আরেকটি আশাব্যঞ্জক সমাধান হ'ল http://www.enhance-php.com , দেখতে সুন্দর লাগছে :)
<phpunit backupGlobals="false">
কনফিগার এক্সএমএল ব্যবহার করেছি এবং টেস্টে গ্লোবাল নিয়ে কখনও সমস্যা হয়নি ...
global $xxx
এবং এর সমস্ত সংমিশ্রণ চেষ্টা করেছি --no-globals-backup
এবং হঠাৎ করে সমস্ত কিছু দেখার আগে আশানুরূপ কাজ করা। : ডি
যখন একসাথে পরীক্ষার জন্য কয়েক হাজার ফাংশন থাকে, ফপুনিট হ'ল উপায়, ওয়েব টেস্টের ভিত্তিতে সহজ পরীক্ষা হ্রাস পাচ্ছে।
আমি এখনও ছোট স্কেল পরীক্ষার জন্য সাধারণ ওয়েব ব্যবহার করছি।
তবে দুটোই ভাল