مقالات

چرا باید کد شما را آزمایش کنم؟ (تست قطعه 5 دقیقه ای)


اگر نمی توانید 5 دقیقه کار خود را امتحان کنید ، پس من را انجام ندهید.

من 18 سال را در صنعت مهندسی نرم افزار گذراندم و به عنوان یک برنامه نویس ، سپس یک توسعه دهنده خوانده شدم و اکنون یک مهندس نرم افزار – سپس این یک “تحویل یک دیو” است ، کلمات من را علامت گذاری کنم. در آن زمان ، من سهم منصفانه خود را از کد آزمایش کردم. من به عنوان یک تستر جزئی کار کردم ، یک کد آزمایش شده که من نوشتم ، گروه های مدیریت شده برای ارائه کیفیت (QA) و بینی خود را در سیستم هایی قرار می دهم که نباید.

عناوین زیادی برای کسانی که به صورت حرفه ای نرم افزار آزمایش می کنند وجود دارد. شما را می توانید در یک تست تستر ، آنالایزر QA یا مهندس نامیدید. شما می توانید اسکریپت های اتوماسیون فوق العاده مدرن ایجاد کنید که گزارش های زیبایی را از طریق Sonarqube ارائه می دهد یا می توانید تست های کاملاً دستی را انجام دهید. صرف نظر از عنوان یا رویکرد خود ، شما سعی می کنید قبل از انجام این کار در تولید مشکل پیدا کنید و کاربران آنها را پیدا می کنند.

تستر شریک مهندس جرم است. درست مانند ویراستار یک کتاب ، شما آنچه دیگران (یعنی مهندسین) نوشتند را می پذیرید و آن را عالی تر می کنید. همانطور که اشتاینبک در مورد ویراستار خود گفت: “او خیلی بیشتر از یکی از دوستانم بود. او ویراستار من بود. فقط یک نویسنده می تواند درک کند که یک ویراستار عالی یک پدر ، مادر ، معلم ، شیطان شخصی و خدای شخصی است. 30 سال ، پت همکار و وجدان من بود.

آزمایش کنندگان به مهندسان نرم افزار کمک می کنند تا از آنجا حرکت کنند خوب برای یک عالیحرف

با گذشت سالها ، من به دو چیز برای تست اعتقاد دارم:

اولیکاری که یک تستر انجام می دهد دشوار است. وظیفه آنها نیاز به استفاده از دقت در الزامات خاص پروژه ، تفکر غیر متعارف (زمینه ، چه زمینه ای؟) ، هدایت کاربر نهایی و کل نگر/در سطح سیستم است. آزمایش کنندگان در حال انجام کارهای باورنکردنی بودند و برای موفقیت من در انتشار نرم افزار عالی بسیار مهم بودند.

دومکار تستر حتی از مهندسان نرم افزار دشوارتر است ، زیرا مهندسان کد گهی را منتقل می کنند که آنچه را که من “تست 5 دقیقه ای SNOT” می نامم را منتقل نمی کند.

به عنوان یک مهندس نرم افزار ، شما نرم افزار عالی شغلی را انتخاب کردید. شما دوست دارید مشکلات سرگرم کننده و جالب را با استفاده از بیشترین بازوها ، بزرگترین الگوریتم ها و رنگین کمان ها و تکشاخ ها حل کنید. هر روز ، “شما آن را خرد می کنید!” با این حال ، اگر شما مجبور شوید از الزامات ضعیف تعریف شده (گاهی غیرقابل درک) ، فقط برای رسیدن به قلب مشکل ، موک بزنید.

پیشرفت شما در حال کند شدن است ، زمان شما گم می شود و عصبانی می شوید! اگر مدیر محصول به تازگی کمی بیشتر از آنچه به شما خیانت کرده است ، می توان از این همه جلوگیری کرد. نخست وزیر به کار خود افتخار نمی کند؟ آیا آنها حتی می دانند چه کاری انجام می دهند؟ زباله داخل زباله در خارج است.

هنگامی که مهندس نرم افزار برای انتقال کار خود روی آورد ، کیفیت کد کارآیی ، موفقیت و اخلاقی آزمایش شخص را تعیین می کند. تستر انتظار دارد همان سطح کیفیت مهندس نرم افزار از PM باشد. این بدان معنا نیست که کد شما بدون خطا است – ما نمی خواهیم کسی را از کار بگذاریم – بلکه این بدان معنی است که کد شما با سطح خاصی از کیفیت و حرفه ای مطابقت دارد.

چگونه می توان کیفیت و حرفه ای مورد انتظار را تعیین کرد؟ آزمایش 5 دقیقه ای Snuff را وارد کنید. به طور کلی ، اگر کسی (تستر ، QA ، همسر یا کشیش) بتواند در پنج دقیقه اول آزمایش کد شما اشتباهات بزرگ و آشکار پیدا کند ، پس وقت کافی برای آزمایش نکرده اید. شما وقت خود را از دست داده اید ، از زمان تستر امتناع کرده و برای دستیابی به کار سهل انگاری شروع به ایجاد شهرت کرده اید (سؤال: آیا حتی می دانید چه کاری انجام می دهید؟). شما یک تخم پوسیده شده را که بوی بدی می دهد ، قرار داده اید ، همه می دانند که شما هستید و باید آشفته شوید. زباله داخل زباله در خارج است.

این “من می خواهم زیر یک سنگ خز شوم”

من و تیم من یک بار یک ویژگی جدید عالی را در برنامه iPad خود ایجاد کردیم ، که از نظر فنی چالش برانگیز بود و بیشترین طراحی را داشتیم و من از کارهایی که انجام دادیم بسیار افتخار می کردم. او لرزید و ما او را خرد کردیم!

با یک گربه چستر ، من درخواست Asia CTO ما (یک مرد ارشد با حدود 10،000 نفر را که به او گزارش می دهند) ارائه دادم. او شروع به کلیک بر روی همه جا کرد ، به جز وقتی که می خواستم او را کلیک کند.

نه. نه! توقف

اما او فقط کلیک می کرد. برنامه فروپاشید ، داده ها بارگیری نمی شوند و ضرب و شتم. در پایان ، او آیپد من را برگرداند و گفت: “آماده به نظر نمی رسد.”

او هرگز ویژگی های جدیدی را که ما ساخته ایم ندیده است. من ویران شدم ، خجالت کشیدم و می خواستم زیر یک صخره خزنده باشم ، اما یک درس مهم را نیز آموختم.

هیچ کس دیگری را به دنبال خود نکشید.

من معمولاً می شنوم که مهندسان نرم افزار ادعا می کنند که تغییر تفکر آنها از رمزگذاری به آزمایش بسیار دشوار است.

به همین دلیل ما یک تیم تست داریم ، درست است؟

مزخرف

من از شما نمی خواهم که راه بروید ، شکم خود را مالش دهید و همزمان آدامس را جوید (این دشوارتر از آن است که فکر می کنید). لطفاً به معنای واقعی کلمه پنج دقیقه را صرف آزمایش آنچه ساخته اید و آنچه را که برای ایستادن در پشت آن نیاز دارید ، صرف کنید.

فقط به این دلیل که این شهر محصولات تمیز کردن خیابان را دارد به این معنی نیست که شما باید پوسته خود را روی زمین پرتاب کنید.

هیچ کس دیگری را به دنبال خود نکشید.

ما باید بهتر عمل کنیم.

و ما می توانیم

آزمایش 5 دقیقه ای Sniff اولین خط محافظت در برابر ذهنیت “من فقط همه چیز را منتقل می کنم” است.

این بدان معناست که ، قبل از تحویل عملکرد خود ، متوقف کردن ، هوای عمیق ، پاک کردن ذهن خود ، و در 300 ثانیه بعدی ، آنچه را که اخیراً ساخته اید آزمایش کنید.

  • خارج از جعبه – 90 ثانیه: آیا از کفش مهندسی خود بیرون رفتید و از دیدگاه کاربر آزمایش کردید؟ آیا این ویژگی به جز الزامات خوب و احساس درست به نظر می رسد؟ من در گوشه ها ترسیم می کردم و استدلال می کردم که این عملکرد معتبر است زیرا “آنچه الزامات می خواست” بود.
  • تست های واحد خود را بررسی کنید – 30 ثانیه: آیا تمام آزمایشات دستگاه می گذرد و آیا پوشش کاملی از کد وجود دارد؟ شما نمی توانید همه چیز را با دست آزمایش کنید ، بنابراین تست های واحد خودکار برای کیفیت کد بسیار مهم است. 30 ثانیه اختصاص داده شده برای ایجاد تست واحد نیست ، بلکه فقط برای بررسی اینکه آنها در حال گذر هستند. در صورت عدم گذراندن تست های واحد ، باید عدم ساخت را نیز در نظر بگیرید که این امر زمان بیشتری را برای آشکار فراهم می کند.
  • آشکار – 190 ثانیه: آیا همه موارد واضح را آزمایش کردید؟ به عنوان مثال ، اگر آنها یک دکمه را فشار دادند تا Unicorns در صفحه نمایش رقص شود ، حتماً آزمایش کنید که آیا فشار دادن دکمه در واقع باعث رقص تک شاخ ها در صفحه نمایش می شود. آیا من در خاطرات اشتباه می گیرم ، آیا آنها قوس ها را نشان می دهند ، اگرچه این بخشی از الزامات نیست (اگرچه باید باشد ، زیرا این عالی خواهد بود) و اگر دو بار روی دکمه کلیک کنم چه اتفاقی می افتد؟ الزامات را مرور کنید و مطمئن شوید که همه چیز اضافه شده است. به عنوان مثال ، آیا شما متوجه شده اید که تعداد کل ثانیه های ذکر شده در اینجا 310 به جای 300 ثانیه است؟ بیایید “آشکار” را تا 180 ثانیه تنظیم کنیم.

پنج دقیقه تمام چیزی است که شما باید مطمئن شوید که گهواره را منتقل نمی کنید. اگر همه چیز دیگر شکست خورد ، یک همکار را بگیرید و از آنها بخواهید که بوی اطراف خود را ببخشند.

مالکوم گلادول در کتاب خود Blink ، داستان مصاحبه كنندگان را روایت می كند كه در 5 ثانیه اول مسابقه در مورد كیفیت كاندیدای داوری می كنند. مصاحبه کننده همچنان به طور ناخودآگاه تصور اولیه خود را با وزن ذهنی پاسخ متقاضی به تعصبات خود تقویت می کند.

به عبارت دیگر ، اولین تصور شما آخرین برداشت شماست. من اعتقاد ندارم که من تا به حال به طور کامل شهرت خود را در CTO به آسیا پس از این برداشت اول بد دوباره احیا کرده ام.

انجام یک تست 5 دقیقه ای SNOT برای بررسی گه های شما زمان بسیار کمی طول می کشد ، اما می تواند برای شما ، همکاران و شرکت شما سودمند باشد:

  • به شما در ساخت شهرت برای دستاوردهای بالا و کیفیت ،
  • من احترام شریک زندگی شما در جرم ، تستر و
  • این بیشتر است مؤثر با وقت همه

هنگامی که همه چیز درست بعد از تست 5 دقیقه ای SNOT به نظر می رسد و احساس می شود ، از ویژگی هایی که به آن افتخار می کنید بروید و از آن عبور کنید و می توانید پشت سر هم بایستید. شما یک تستر سپاسگزار خواهید داشت و به عنوان یک مهندس عالی شهرت ایجاد کرده اید.

برای iirshare

Ayrshare یک API برای رسانه های اجتماعی است که به شما امکان می دهد انتشارات را ارسال کنید ، تجزیه و تحلیل دریافت کنید ، نظرات را مدیریت کنید و پیام های مستقیم را به طور مستقیم به شبکه های اجتماعی از سیستم عامل خود ارسال کنید. در اسناد API ما در رسانه های اجتماعی بیشتر بدانید.


Source link

نوشته های مشابه

دیدگاهتان را بنویسید

دکمه بازگشت به بالا