আমরা প্রতি সপ্তাহে কেবল আমাদের উত্পাদনের রিলিজে থাকা-প্রস্তুত-বৈশিষ্ট্যগুলি কীভাবে অন্তর্ভুক্ত করতে পারি?


12

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

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

কিউএ শাখায় একত্রীকরণ করা এই নতুন বৈশিষ্ট্যগুলির সাথে সমস্যাগুলি খুঁজে পাওয়া আমাদের পরীক্ষকদের পক্ষে সাধারণ quite এর অর্থ হ'ল যে কোনও সময়, কিউএ পরিবেশে সম্ভবত বেশ কয়েকটি নতুন বৈশিষ্ট্য রয়েছে - কিছু পরীক্ষিত এবং বাগ-মুক্ত এবং কিছু ভাঙা। এটি রিলিজিংকে কঠিন করে তোলে কারণ ক্যুএ বিল্ডটি উত্পাদন-প্রস্তুত অবস্থায় রয়েছে বলে বিরল।

এটি প্রশমিত করতে আমরা একটি "কিউএ ফ্রিজ" শুরু করার চেষ্টা করছি যার অর্থ বিকাশকারীরা মুক্তির কয়েক দিন আগে আমাদের উন্নয়ন শাখা QA শাখায় একীভূত করবেন না। কিউএ পরিবেশে বাগ ফিক্সগুলি সরাসরি কিউএ শাখায় তৈরি করা হয় এবং উন্নয়ন শাখায় একীভূত হয়। তাত্ত্বিকভাবে, এটি নতুন, ভাঙা বৈশিষ্ট্যগুলি QA এর বাইরে রাখে এবং এখনও আমাদের QA এর মধ্যে ইতিমধ্যে সমস্যাগুলি সমাধান করার অনুমতি দেয়।

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

আমাদের প্রতি প্রতি সপ্তাহে আমাদের রিলিজের জন্য পরিষ্কার পরিচ্ছন্নতা রয়েছে কিনা তা নিশ্চিত করার আরও ভাল উপায় আছে?


3
কি বাগগুলি রিগ্রেশন সংক্রান্ত সমস্যাগুলি থেকে আসে (যেখানে রিগ্রেশন পরীক্ষা কার্যকর হবে), মিস করা ব্যবহারের ক্ষেত্রে (নতুন বৈশিষ্ট্যটি হ'ল এমন কিছু বিশেষ ক্ষেত্রে অনুপস্থিত যা টুইঙ্ক প্রয়োজন) বা একই সাথে অন্য বৈশিষ্ট্যগুলির সাথে সংঘর্ষগুলি সংঘটিত হয় (সুতরাং দ্বিতীয় বৈশিষ্ট্যটি সংহত হওয়ার কারণগুলি রয়েছে) ইস্যু উঠবে)? আমি ভাবছি এখানে মূলটি কিছুটা সংকুচিত করা যায় কিনা।
জেবি কিং

1
আমাদের এই সঠিক সমস্যা ছিল। উত্তরটি কিউএ তাদের নিজস্ব শাখা তৈরি করে। তারা মূলটি হিমায়িত করে না। মুক্তির পরে শাখাটি আবার মেশানো, ট্যাগ এবং মুছে ফেলা হয় । এছাড়াও শ্বাসকষ্টটি হল QA কেস ভিত্তিতে কোনও বিষয়গুলিকে এই শাখায় মার্জ করার অনুমতি দিতে পারে। তবে স্বাভাবিক কাজ স্বাভাবিক হিসাবেই অব্যাহত থাকে
রিচার্ড টিঙ্গল

2
বিষয় "দ্বি-সাপ্তাহিক" বন্ধ করা একটি বিপজ্জনক শব্দ হিসাবে বিবেচিত হয় । কিছু লোক মনে করেন এর অর্থ সপ্তাহে দু'বার, অন্যরা প্রতি 2 সপ্তাহে
রিচার্ড টিঙ্গল


@ জেবিকিং প্রিটি উপরোক্ত অনেকগুলি আমি বলব সবচেয়ে সাধারণ হল পরীক্ষক নতুন বৈশিষ্ট্যে একটি বাগ খুঁজে পান বা নতুন বৈশিষ্ট্যটি নতুন বৈশিষ্ট্যের সাথে সম্পর্কিত না হওয়া একটি রিগ্রেশন বাগের কারণ করে।
নাথান বন্ধু

উত্তর:


9

এতে চারদিকে ভাসমান কয়েকটি সমস্যা রয়েছে যা আপনার সমস্যার মুখোমুখি হচ্ছে।

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

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

এরপরে, আপনি যে ভূমিকাগুলিতে আবদ্ধ হচ্ছেন সেগুলি পেয়েছেন। এর অর্থ হ'ল প্যাকেজিংয়ের ভূমিকা (এটি আরও পরে) পর্যাপ্তভাবে বিচ্ছিন্ন হচ্ছে না।

ইন Git-প্রবাহ মডেল, মুক্তি শাখা গঠন থেকে শাখা করা হয় ( না গঠন QA তে মার্জ) এবং সমস্ত সংশোধন করা হয়েছে মুক্তি শাখা মধ্যে চেক করা হয় এবং তারপর ফিরে উন্নয়ন শাখায় মার্জ হয়েছে।

অ্যাডভান্সড এসসিএম ব্রাঞ্চিং স্ট্র্যাটেজিগুলিতে শাখা প্রশাখার কিছু দর্শন পাওয়া যায় (আমি একটি দুর্দান্ত পাঠ্য হিসাবে বিবেচনা করি)। এটি প্রতিটি শাখা যে ভূমিকা নিতে পারে তার উপর দৃষ্টি নিবদ্ধ করে। রিলিজ শাখা প্যাকিংয়ের ভূমিকা গ্রহণ করে।

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

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

গিট-প্রবাহের পুরোপুরি স্থানে প্রয়োগের জন্য গুরুত্ব সহকারে বিবেচনা করা উচিত। এটি বর্তমানে যা করা হচ্ছে তার থেকে খুব বেশি দূরে নয় এবং প্রতিটি শাখার অর্থ কী এবং প্রতিটি শাখা অন্যের সাথে কীভাবে যোগাযোগ করে তার কিছুটা শৃঙ্খলা এবং ধারাবাহিকতা রাখে।


"রিলিজগুলি এখানে যান" "ওয়ার্কিং" নামে পরিচিত।
র্যান্ডম ইউএস 1

10

সমস্যাটি আমার কাছে মনে হচ্ছে আপনার একক QA শাখা রয়েছে।

প্রতিটি প্রকাশের জন্য, প্রাথমিক বিকাশের ট্রাঙ্ক / মাস্টার থেকে পৃথক কিউএ শাখা তৈরি করুন। তারপরে সেই শাখার বৈশিষ্ট্যগুলির জন্য কেবল বাগগুলির জন্য সংশোধনগুলিতে মার্জ করুন - নতুন বৈশিষ্ট্য কখনও নয়। কিউএ পরীক্ষা আছে যে শাখা।

এইভাবে, "ফ্রিজ" বেশ স্পষ্ট - এটি শাখার নামে। আপনি যেমন কিছু ব্যবহার করতে পারেন, আমি জানি না release/26/10/2015। তারপরে এটি সুস্পষ্ট যে এর পরেও নতুন বৈশিষ্ট্যগুলিতে কারও একত্রিত হওয়া উচিত নয়।

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

একটি দীর্ঘ দীর্ঘ চলমান কিউএ শাখা নেই, এটি কেবল সমস্যার জন্য ভিক্ষা করছে। প্রতিটি রিলিজের জন্য প্রধান বিকাশ শাখা থেকে কাঁটা এবং সেই শাখা কিউএ।


1
এমন একটি শাখা যার নাম হিমায়িত সময়সীমার স্মরণ করিয়ে দেয় আমার পক্ষে খুব ভাল ধারণা মনে হয় (+1) যতক্ষণ না বিকাশকারীরা অসম্পূর্ণ বৈশিষ্ট্যগুলিতে কাজ করা অবিরত না করে এবং এই "বাগ ফিক্সিং" ডাকে।
জর্জিও ২

4

আপনি নীচে প্রদর্শিত উন্নয়ন-মেইন-প্রোডাকশন শাখার মডেলটিতে কিছুটা ম্যাপ করেছেন। মেইন এর ওপরের অঞ্চলটি উন্নয়ন অঞ্চল বলে জানা গেছে। মেইন এর নীচের অঞ্চলটি উত্পাদন ক্ষেত্র।

উন্নয়ন-মেইন-প্রোডাকশন শাখার মডেল

এই মডেলটির হাইলাইটগুলি যা আমি আপনার জন্য প্রাসঙ্গিক বলে মনে করি:

  • আপনার সর্বশেষতম পরিবর্তনগুলি সর্বদা সর্বশেষতম বিকাশের বিষয়টি বিবেচনা করে তা নিশ্চিত করতে আপনার ডেভসকে তাদের ডিইভি শাখায় প্রায়শই (সপ্তাহে ২-৩ বার) ফরওয়ার্ড ইন্টিগ্রেট (এফআই) (এফআই = মেইন থেকে বিভক্ত হওয়া) প্রয়োজন।
  • আপনার ডেভসকে কেবল টেস্ট শাখায় রিভার্স ইন্টিগ্রেট (আরআই) (মেইন এর দিকে মার্জ) করা দরকার কেবল যখন তারা কোনও বৈশিষ্ট্য-সমাপ্তির মাইলফলক পৌঁছেছেন যা তারা QA তে প্রকাশ করতে চান এবং যার জন্য তারা প্রম্পট ফিক্সগুলি সরবরাহ করতে প্রস্তুত রয়েছে QA প্রতিক্রিয়া প্রতিক্রিয়া। সমাধানগুলি টেস্ট শাখায় করা হবে এবং তাত্ক্ষণিকভাবে তাদের ডিইভি শাখায় এফআই করা হবে।
  • কোনও ডিইভি শাখা থেকে কখনই মেইনে আরআই করবেন না
  • সর্বদা টেস্ট শাখা থেকে মেইন থেকে RI করুন কেবলমাত্র যখন আপনার QA টেস্টের মান ঠিক রাখে। MAIN এ মার্জ করার জন্য একটি উচ্চ মানের থ্রেশহোল্ড রাখুন। খুব কমপক্ষে, আপনার প্রোডাক্ট ম্যানেজারকে অবশ্যই MAIN এর সর্বশেষ প্রতিশ্রুতি থেকে আপনার পণ্যটির একটি কার্যকরী সংস্করণ ডেমো করতে সক্ষম হতে হবে।
  • প্রয়োজন হিসাবে কেবল উত্পাদন ক্ষেত্রগুলিতে শাখা তৈরি করুন। আপনার বিল্ড সার্ভারটি সর্বদা সমস্ত শাখা ট্যাগ করা উচিত, বিকাশ ক্ষেত্রের শাখাগুলি সহ এবং কোনও বিল্ড / রিলিজের উত্সটি যে শাখা থেকে এসেছিল তা নির্বিশেষে সর্বদা চিহ্নিতযোগ্য হওয়া উচিত।
  • কেবল মেইন বা উত্পাদন অঞ্চল থেকে উত্পাদনের জন্য রিলিজ নিন। যদি পরে আপনাকে সঠিক প্রকাশিত সংস্করণের (যেমন আপনি কেবল মেইন থেকে সর্বশেষতম সংস্করণটি দিতে পারেন না) জন্য একটি সরবরাহ সরবরাহ করতে হয়, ত্রুটিযুক্ত মুক্তির মেইন ট্যাগ থেকে উত্পাদন অঞ্চলে একটি শাখা তৈরি করুন, যখন ঠিক করা দরকার। হটফিক্স শাখায় সর্বদা সমস্যাটি ঠিক করুন এবং তারপরে তাত্ক্ষণিকভাবে মেইন এবং এফআই-তে টেস্টে প্রবেশ করুন।

আমার সন্দেহ হয় আপনার সমস্যা আছে কারণ:

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

2

আমি প্রশ্নটি বুঝতে পারলে আপনার দুটি সমস্যা আছে। (ক) ভাঙা বৈশিষ্ট্যগুলি যে ভাল বৈশিষ্ট্যগুলি আপনাকে প্রকাশ করতে চায় তার সাথে মিশে যাচ্ছে; (খ) আপনি ভাঙা জিনিসগুলি ধরে রেখে ভাল বৈশিষ্ট্যগুলি প্রকাশ করতে সক্ষম হতে চান। সম্ভাব্য সমাধানগুলির সীমাবদ্ধতা হিসাবে, আমি ধরে নিচ্ছি যে আপনি চান আপনার চূড়ান্ত / অফিসিয়াল QA টেস্টিংটি একটি সংহত শাখায় ঘটুক যাতে পরবর্তী রিলিজের জন্য থাকা সমস্ত বৈশিষ্ট্য থাকবে।

আপনার এসসিএম শাখার মডেল নির্বিশেষে, আমি আপনাকে নীচের দুটি বা দুটি চেষ্টা করার পরামর্শ দিচ্ছি:

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

1

একটি খুব সহজ সমাধান যা আমি আপনার চেয়ে কিছুটা বড় একটি টিমের কাজ দেখেছি প্রত্যেককে কাজ করা এবং একটি শাখা থেকে মোতায়েন করা।

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

স্পষ্টতই যে কোনও পদ্ধতির পক্ষে মতামত রয়েছে, আমি এটি একটি বিকল্প হিসাবে উপস্থাপন করি না যে এটি 'সর্বোত্তম উপায়' নয়।


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

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

1

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

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

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

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