কীভাবে দ্রুপালে টেস্ট ড্রাইভেন ডেভলপমেন্ট (টিডিডি) করবেন?


30
  • ড্রুপাল (পিএইচপি মডিউল, দ্রুপাল মডিউল ইত্যাদি) টিডিডি ব্যবহার করা সরঞ্জামগুলি কী কী?
  • আপনার প্রতিশ্রুতি / পরীক্ষা / কার্যপ্রবাহের মতো লাগবে? এই কর্মপ্রবাহটি পরিচালনা করার জন্য আপনি কি Phing, PHPUenderControl, Hudson ব্যবহার করেন?
  • কোন উপায়ে ইউনিট টেস্টিং আপনার কোডটিকে আরও নির্ভরযোগ্য করে তোলে?
  • আপনার কি আলাদা, ব্যয়বহুল, একা একা পরীক্ষা সার্ভারের দরকার বা ল্যাপটপ থেকে এটি করতে পারেন?

আমি জানি যে রবার্ট এখানে সিম্পল টেস্টের সাথে দ্রুপালে ইউনিট পরীক্ষার বিষয়ে একটি দুর্দান্ত প্রযুক্তিগত পোস্ট লিখেছিল; আমি কর্মপ্রবাহ এবং কনফিগারেশনের অংশটি coveringাকতে আরও আগ্রহী। বর্তমানে আমার কাছে একটি ডেভলপমেন্ট মেশিন, স্টেজিং এবং প্রোডাকশন সার্ভার রয়েছে। উত্পাদন এবং মঞ্চ উভয়ই সাইটগুলি 300MB র‌্যাম / 300MHz সিপিইউ ড্রিমহোস্ট ভিপিএসে চলে।

উত্তর:


8

রুবি বিশ্বে, টিডিডি কাঠামোর মধ্যে নির্মিত সরঞ্জামগুলি দ্বারা সহজতর হয়। কারখানার গার্ল, মোচা, আরএসপেক এবং অন্যরা বিকাশকারীদের সহজে এবং গতিশীল পরীক্ষা করতে দেয় যা পরীক্ষার কেসগুলির প্রয়োজনীয়তার সমাধান করে।

দ্রুপালে টিডিডি সরঞ্জামের অভাবে আমি হতাশও হয়েছি। তাদের সাথে আমার সবচেয়ে বড় সমস্যাটি হ'ল একক পরীক্ষা চালাতে যে পরিমাণ সময় লাগে। প্রতিটি পুনরাবৃত্তির 60-90 সেকেন্ড সময় স্বতন্ত্র পরীক্ষার মাধ্যমে বিকাশ চক্রকে ধীর করা যায় না। আপনি যদি পরীক্ষাগুলি একেবারেই লেখার জন্য বিরক্ত না করেন তবে পুরো পরীক্ষার স্যুটগুলি একাধিক ঘন্টা সময়সীমার মধ্যে চলে যাবে।

আমার সন্দেহ হয় প্রতিবারই পরীক্ষা চালানোর সময় এটি সম্পূর্ণ ডিবি অনুলিপি করার সাথে করণীয়, তবে আমি যা বলতে পারি তা অদূর ভবিষ্যতে পরিবর্তিত হওয়ার সম্ভাবনা নেই, বিশেষত যদি আপনাকে ড্রপালওয়েবটেষ্টকে ব্যবহার করার প্রয়োজন হয়।

আমি ফ্যাক্টরি ব্যবহার করে একসাথে একটি সমাধান হ্যাক করছি এবং ফুপুনিট , যা ড্রুপালকে ম্যানুয়ালি বুটস্ট্র্যাপ করে। স্পষ্টতই কিছু সমস্যা নিয়ে চলছে এবং এটি শেষ করেনি, তবে এটি সেখানে পৌঁছেছে।

ভাগ্যক্রমে আমার বেশিরভাগ কাজ ব্যাকএন্ড লেয়ারে রয়েছে, তাই আমি DRUPAL_BOOTSTRAP_DATABASE পর্যায়ে থাকতে পারি। তবে আমি আরও পরিস্থিতিতে চলেছি যেখানে আমার পুরো স্ট্যাকের প্রয়োজন হবে।

শেষ পর্যন্ত, দ্রুপালে টিডিডি ভাল সমর্থন করে না, তাই এটি আপনার নিজের লেখার জন্য এটি ড্রুপাল পরীক্ষার কাঠামোর বাইরে কাজ করতে, বা খারাপ পারফরম্যান্স সহ্য করতে পারে।

-- হালনাগাদ --

আমি ফ্যাক্টরির সাথে সফলভাবে একটি সম্পূর্ণ ড্রুপাল সংহতকরণ সেটআপ করেছি এবং এখন ড্রপাল ওয়েব টেস্ট কেসের পরিবর্তে phpunit এর মাধ্যমে আমার পরীক্ষা চালাচ্ছি। সুতরাং এটি সম্ভব।

আমি আশা করি এমন একটি জায়গায় পৌঁছে যাব যেখানে আমি এটি প্রকাশ করতে পারি এবং এটি ফ্যাক্টরি ডকটিতে অন্তর্ভুক্ত হতে পারে।

- আপডেট 2 -

আমি কীভাবে ফ্যাক্টরি সেটআপ করি তার ডকটি https://github.com/trimbletodd/phactory এ রয়েছে


আপনার অবদানের জন্য ধন্যবাদ. ইউনিট পরীক্ষার জন্য ফ্যাক্টরিতে কী চলছে তা খুব আকর্ষণীয়। আপনি যে রান্না করে আসছেন সেই দ্রুপাল মডিউলটি দেখার অপেক্ষায়;)
অপেশাদার বারিস্তা

আমি কীভাবে আমার কাঁটাঝাঁটিতে দ্রুপালের মধ্যে ফ্যাক্টরি পরিচালনা করছি তার একটি দ্রুত ডক রেখেছি। আমি মাস্টারের কাছে একটি টান অনুরোধ জমা দিয়েছি, তবে এটি এখনও সংযুক্ত করা হয়নি। github.com/trimbletodd/phactory
trimbletodd

এই প্রশ্ন এবং এর উত্তরগুলি এখনও এই দিনে ফিরে আসতে থাকবে। আপনি আপনার নিজের কাঁটাচামচ / সমাধান ঘূর্ণায়মান জন্য রক। সুতরাং, আপনি স্বীকৃত উত্তর পুরষ্কার পেয়েছেন স্যার।
অপেশাদার বারিস্তা

12

যেহেতু মার্কের ব্লগটি অফলাইনে রয়েছে, তাই আমি তার দল প্রয়োগ করা কয়েকটি সরঞ্জামের উল্লেখ করব:

কার্যকরী টেস্টিং: সেলেনিয়াম
ইউনিট টেস্টিং: সিমপ্লেস্টেস্ট
বিল্ড সার্ভার: জেনকিনস
পারফরম্যান্স বেঞ্চমার্কিং: এক্সডিবেগ + ক্যাশেগ্রিন্ড

এই প্রশ্নটি জিজ্ঞাসা করার পরের দুই বছরে আমি টিডিডি দৃশ্যে কিছু অতিরিক্ত সরঞ্জাম জনপ্রিয়তা অর্জন করতে দেখেছি। আজকাল যখন আপনি টেস্ট ড্রাইভড ডেভলপমেন্টের কথা বলেন (অবশ্যই একটি দ্রোপাল প্রসঙ্গে) একই মুদ্রার দুটি দিক রয়েছে - ফ্রন্ট-এন্ড টেস্টিং এবং ব্যাক-এন্ড টেস্টিং।

এখানে দুটি উপস্থাপনা যা সাম্প্রতিক দ্রুপালকন পোর্টল্যান্ড 2013 থেকে এই বিষয়টিকে উপস্থাপন করছে তার থেকে পৃথক রয়েছে:

বিকাশ, নাম্বার দ্বারা , ব্যাকএন্ড পরীক্ষা।
জেসমিন এবং ফ্যান্টমজেএস , ফ্রন্টএন্ড পরীক্ষা সহ অটোমেটেড টেস্টিং

প্রথম উপস্থাপনা ইউনিট বা কার্যকরী পরীক্ষার সাথে সম্পর্কিত নয় (কঠোরভাবে বলা), এটি কোডের মান পরিমাপের সরঞ্জামগুলির সম্পর্কে আরও বেশি। তবুও, আমি মনে করি এটি বিষয়টির সাথে কিছুটা সম্পর্কিত।


1
কি দারুন! আপনি কি আবিষ্কার করেছেন তা আমাদের জানাতে 2 বছর পরে ফিরে আসার জন্য ধন্যবাদ! আপনি রক করেছেন :)
চাঁপাবু

5

আমি কেবল অবগত যে অবদান মডিউলগুলির জন্য, আপনি ইস্যু সারিতে কমিটস এবং প্যাচগুলির স্বয়ংক্রিয় পরীক্ষার সক্ষম করতে পারেন , দেখুন http://drupal.org/node/689990 । এটি এখনও কিছুটা অস্থির, বিশেষত যদি আপনার নির্ভরতা থাকে।

বেশিরভাগ প্রকল্পগুলি সম্ভবত বাগ চালিত বিকাশের ধারায় আরও কিছু করছে যা মূলত কোনও ত্রুটি সন্ধান করার পরে প্রথমে একটি পরীক্ষা লেখার জন্য নেমে আসে এবং পরে এটি সংশোধন করে। যদি এ সব ;)

আমার ব্যক্তিগত অভিজ্ঞতা থেকে, টিডিডি দ্রুপালের পরিবর্তে শক্ত, কারণ আপনি প্রায়শই সিমপ্লেস্টেস্ট তবে ইন্টিগ্রেশন পরীক্ষার সাথে ইউনিট পরীক্ষা (কেবল) ইউনিট টেস্ট লিখেন না, যেখানে আপনি পৃষ্ঠাগুলি দেখেন এবং ফর্মগুলি জমা দেন। সুতরাং আগে থেকে ভাল পরীক্ষা লেখার চেয়ে বরং শক্ত হতে পারে। তবে সম্ভবত আমি এটি করতে অভ্যস্ত নই :)

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.