পরীক্ষা-চালিত বিকাশ এবং সাদা বক্স পরীক্ষার দক্ষতা উন্নত করা


9

আমি সরাসরি স্কুলের বাইরে এন্ট্রি লেভেল জাভা প্রোগ্রামার। আমার কাছে জে 2 এসই সম্পর্কে ভাল জ্ঞান এবং অভিজ্ঞতা আছে। জাভা হোয়াইট বক্স পরীক্ষক হওয়ার দিকে আমার দক্ষতা কীভাবে উন্নত করতে বা টিউন করা যায় সে সম্পর্কে কেউ আমাকে পরামর্শ দিতে পারেন? ইনপুট বিস্তৃত পরিসীমা স্বাগত।

এবং টেস্ট চালিত বিকাশ কি?


ব্ল্যাক বক্স টেস্টিংও কেন হয় না?
মার্টিজন ভার্গবার্গ

@ মার্তিজন, পটভূমি বিবেচনা করে, সম্ভবত হোয়াইটবক্স পরীক্ষার প্রযুক্তিগত চ্যালেঞ্জের কারণে। এছাড়াও, ব্ল্যাক বক্স কৌশলগুলি বিকাশকারীদের পক্ষে খুব কার্যকর, বিকাশকারীদের জন্য ভাল গুণাবলীর লোকেরা ভাল ব্ল্যাক বক্স পরীক্ষক তৈরি করে না, আমরা খুব কৌতূহলী এবং অধৈর্য হতে পারি। আমি জানি আমি করেছি।
স্টুপারউসার

উত্তর:


9

টেস্ট ড্রাইভেন ডেভলপমেন্ট (টিডিডি) এবং এটি বর্ধিত চাচাত ভাই, গ্রহণযোগ্যতা টিডিডি (এটিডিডি) এবং আচরণ ড্রাইভ ডেভলপমেন্ট (বিডিডি) জাভা বাস্তুতন্ত্রের পরীক্ষক হিসাবে শেখার জন্য দরকারী কৌশল। আপনি সাদা বাক্স পরীক্ষার জন্য সন্ধান করায় আমি টিডিডিতে ফোকাস করব।

টিডিডি কী? - এটি হৃদয়গ্রাহ্য হয় এটি একটি ব্যর্থ পরীক্ষা (লাল) লেখার অনুশীলন, সেই পরীক্ষাকে একটি বাস্তবায়ন (সবুজ) লিখে পুনরায় ফ্যাক্টরিং লিখে পাস করে। Wikipedia নিবন্ধটি অবশ্যই যথেষ্ট জায়গা আরও তথ্য খুঁজে বের করার শুরু হয়। তবে বিষয়টি বিশাল, আমি উদাহরণ হিসাবে টেস্ট ড্রাইভেন ডেভলপমেন্ট এবং উত্তরাধিকারের কোড সহ কার্যকরভাবে কাজ করার মতো এই জায়গাগুলির কয়েকটি সুপরিচিত বই পড়ার পরামর্শ দিচ্ছি । আমি ওয়েল-গ্রাউন্ডেড জাভা ডেভেলপারের টিডিডি অধ্যায়টির জন্য একটি নির্লজ্জ প্লাগও ফেলে দেব

জাভা বাস্তুতন্ত্রের, এর অর্থ আপনি শিখতে চান:

  1. JUnit গ্রন্থাগার এবং / অথবা TestNG গ্রন্থাগার।
  2. যেমন একটি বিদ্রূপাত্মক গ্রন্থাগার Mockito বা JMock
  3. কোড আক্রমণ করার জন্য একটি লোড পরীক্ষার সরঞ্জাম - জেমেটার
  4. নির্ভরতা ইনজেকশন ধারণা (নিয়ন্ত্রণের বিপরীতে রূপ)

এবং তারপরে অনুশীলন, অনুশীলন, অনুশীলন, অনুশীলন। ভাল জাভা সাদা বাক্স পরীক্ষক খুব বিরল, সেরা কোড বেসগুলির বিস্তৃত বিপরীতে সবচেয়ে ভাল লিখেছেন পরীক্ষাগুলি।

এইচটিএইচ শুরু করুন!


এগুলি জাভা বাস্তুতন্ত্রের বিকাশকারী হিসাবে শেখার দরকারী কৌশল। আমি যেমন বুঝতে পেরেছি, পরীক্ষকদের ব্ল্যাক বক্স টেস্টিং করা উচিত।
টম

1

জুনিট জাভা প্রোগ্রামিং ভাষার জন্য সেরা একক পরীক্ষার কাঠামো। এটি পুনরাবৃত্তিযোগ্য পরীক্ষাগুলি লিখতে এবং চালানোর জন্য এটি একটি মুক্ত উত্স কাঠামো।


1

আমি সাধারণত উইকিপিডিয়া উদ্ধৃতি দিতে পছন্দ করি না তবে এই নিবন্ধের তথ্যগুলি যথেষ্ট নিরাপদ বলে মনে হচ্ছে ...

http://en.wikipedia.org/wiki/Test-driven_development

মূলত শর্ত অনুযায়ী এটি সফ্টওয়্যার বিকাশের একটি প্রথম-প্রথম পদ্ধতির ইউনিট পরীক্ষাগুলি প্রথমে কেসগুলি ব্যবহার করার জন্য ডিজাইন করা এবং রচনা করা হত, তারপরে সেই ইউনিট পরীক্ষাগুলি পাস করতে সহায়তা করার জন্য কঠোর বিকাশ ঘটে wards


0

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


0

প্রশ্নটি বিশেষত "হোয়াইট বক্স টেস্টিং" এর উল্লেখ করে। আপনার পরীক্ষাগুলিতে আপনার কোডের অভ্যন্তরীণ কাঠামোর অন্তরঙ্গ জ্ঞান রয়েছে এবং প্রতিটি ইনপুট / আউটপুট / পার্শ্ব প্রতিক্রিয়া (কালো বাক্স পরীক্ষা) না করে প্রতিটি ধাপে আচরণের উপর জোর দেওয়া হয়েছে। JUnit উভয়ই করতে পারদর্শী, আপনি ইউনিট পরীক্ষার প্রসঙ্গে এটি করতে আরও অতিরিক্ত ফ্রেমওয়ার্ক দরকার।

ইজিমক এবং জেমক এটি করার জন্য ভাল ফ্রেমওয়ার্ক। আমি জেএমককে সমর্থন করি।

ওটি বিতর্ক শুরু করার ঝুঁকিতে, আপনার সাদা বাক্স পরীক্ষার প্রভাব সম্পর্কে সাবধানতার সাথে চিন্তা করা উচিত। হোয়াইট বক্স টেস্টগুলি আপনার কোডের সাথে নিবিড়ভাবে আবদ্ধ (স্পষ্টতই), এবং যদি সাবধানে ব্যবহার না করা হয়, তবে মশকরা ফ্রেমওয়ার্কগুলি আপনার পরীক্ষাগুলি বরং জটিল হতে পারে, পড়তে অসুবিধা হতে পারে এবং রিফ্যাক্টরিং করার সময় আরও ভঙ্গুর হতে পারে।

আমি উভয়ের মিশ্রণে লেগে থাকি। যেখানেই সম্ভব ব্ল্যাক বক্স পরীক্ষা করা এবং সাদা বাক্সের পরীক্ষাগুলি ঝুঁকিপূর্ণ / আরও জটিল কোডে অল্প পরিমাণে প্রয়োগ করা হয়।

অবশ্যই উপরে তালিকাভুক্ত ফ্রেমওয়ার্কগুলি ব্ল্যাক বক্স টেস্টগুলিতেও ব্যবহার করা যেতে পারে যেখানে অবদানকারী (ইনজেকশনের) শ্রেণীর সংখ্যা বড় এবং সাধারণ স্টাবিং অযাচিত হয়ে যায়।

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

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