کتاب Software Testing Strategies: A testing guide for the 2020s (استراتژی های تست نرم افزار: راهنمای آزمایش برای دهه 2020) در 3 بخش مختلف به شرح مفاهیم آزمایش نرمافزار خواهد پرداخت.
در ادامه مقدمهای از کتاب Software Testing Strategies را از زبان نویسنده شرح خواهیم داد.
مقدمهای بر کتاب Software Testing Strategies:
ما در عصری زندگی میکنیم که نرمافزار در همه جا وجود دارد. در این مرحله غیرقابل اجتناب است. برخی از آن بیاهمیت است، برای سرگرمی یا زمان گذراندن، در حالی که برخی از نرمافزارها مهمترین مأموریت ممکن هستند و تعادل ظریف بین زندگی و مرگ را برای یک شخص حفظ میکنند.
بیشتر نرمافزاری که با آنها ارتباط برقرار خواهیم کرد، در جایی در آن پیوستار قرار میگیرند. این ممکن است در وب، تلفن ما، ساعت ما یا اندازهگیری وزن بطری آب تمرین ما باشد و به ما یادآوری میکند که خودمان را در مواقع مهم هیدراته کنیم.
حتی اگر ما مستقیماً با آن در تعامل نباشیم، نرمافزار در بسیاری از زمینههای زندگی ما که حتی در نظر نمیگیریم، از جمله مؤسسات مالی ما، نیروگاههای ما، سیستمهای تصویربرداری پزشکی یا در انجام آزمایشات مداوم برای یافتن بهترین راه، اجرا میشود. برای سنتز واکنشهای شیمیایی یا مبارزه با ویروسهای کشنده.
همه این زمینههای تعامل نرمافزاری چیست؟ کسی مجبور است آنها را ایجاد کند و آنها را مستقر کند اما شاید مهمتر از همه، کسی مجبور است آنها را آزمایش کند. در طی چند دهه گذشته، از آن \”کسی\” و بیشتر به سمت \”چیزی\” فاصله گرفته است، به معنای تستهای خودکار در برخی از ظرفیتها انجام تمام کارهای آزمایش.
مطمئناً، نرمافزار میتواند کار هزار آزمایشگر را انجام دهد، درست است؟ با این حال، در رسانههای خبری و در موارد برجسته باز شده است که شاید، شاید، داشتن افرادی که واقعاً آزمایش را درک میکنند مهم، ضروری است و باید برای انجام آن کار آماده باشند. آن شخص نیازی به داشتن عنوان \”تستر\” برای انجام آزمایش ندارد.
آنها میتوانند یک توسعه دهنده نرمافزار باشند، یک سرگرمی تنها در حال کار بر روی یک پروژه Passion یا شخصی که با سیستمهای مزرعه در حال اجرا کار میکند، اطمینان میدهد که آنها قابل استفاده هستند و افراد قادر به دسترسی به آنها هستند. آزمایش در بسیاری از سطوح و کل چرخه عمر توسعه نرمافزار اتفاق میافتد.
در ابتداییترین سطح خود، آزمایش آزمایش واقعی است که در روش علمی انجام میشود. این سؤال از \”چه میشود؟ \” سؤالات. این خوشحالی است که با نرمافزار دزدکی و دشوار است، سعی کنید مناطقی را پیدا کنید که نرمافزار آسیبپذیر باشد و در معرض حمله قرار بگیرد، جایی که شخصی که آزمایش را انجام میدهد میتواندایدههای مورد نظر را پشتیبانی یا رد کند. آیا نرمافزار برای استفاده مناسب است یا در اینجا مشکلی وجود دارد؟
هدف ما از کتاب Software Testing Strategies، معرفی تکنیکهای تست نرمافزار، مفاهیم سرگرمکننده و ماجراجویی است در که آزمایش نرمافزار بررسی خواهد شد. ما میخواهیم مهارتها، فرایندها، تکنیکها و شاید برخی از روشهای جدید برای دیدن قطعات پازل آزمایش نرمافزار را به شما ارائه دهیم. اگر این برای شما سرگرمکننده به نظر میرسد، به ما بپیوندید.
دامنه ما – فراتر از دکمه زدن
پاتریک بیلی، استاد کالج کالوین، یک بار گزارش تحقیقاتی را انجام داد که در آن از مردم از نقش آنها خواسته بود و اگر فقط میتوانستند یک نوع آزمایش را انجام دهند، چه خواهد بود؟ بیلی، به طرز حیرتانگیزی دریافت که مردم تمایل دارند با نقش خود با ارزشترین نوع آزمایش را مرتبط کنند. برنامهنویسان آزمایش واحد را با ارزش و ارزشمند دریافت کردند، مشتریان داخلی تست پذیرش کاربر را پیدا کردند، تحلیلگران تجارت آزمایش سیستم و غیره را با ارزشتر یافتند.
به عنوان مثال، مدیران پروژه تمایل دارند کار را به عنوان یک خط مونتاژ ببینند. هرکسی که دارای مانترا مانند \”برنامهریزی کار، کار کردن برنامه\” باشد و تعصب اسناد و مدارک دوست داردایده نوشتن تستها را به پایین و سپس اجرای آنها انجام دهد.
وقتی دیدیم که سعی کردهایم، نتایج، رک و پوست کنده، ارزش کمتری دارند. بنابراین، این شرکت از دکمههای دکمهای انتقاد میکند، شاید به آنها بخندد. توماس مور در سال ۱۵۵۱ در کتاب خود آرمانشهر نوشت. برای وام گرفتن از آن نویسنده: ابتدا، ما آزمایشکنندههای بدی ایجاد میکنیم و سپس آنها را مجازات میکنیم.
این ممکن است اولین اشتباهی باشد که قبلاً رایجترین آن بود. امروز، ما افرادی را میبینیم که اولین اشتباه را دیدند، میدانند که این احمقانه است، و تمام آزمایشات انسانی را به عنوان نوع ورزش با ارزش و کم ارزش مشاهده میکنند.
این گروه آزمایش را چیز دیگری میداند-اتوماسیون GUI، چکهای واحد سطح پایین و شاید تستهای API. همه اینها در این کتاب نقش و مکان خود را دارند، اما همچنین نمیتوانند عنصر بداهه آزمایش خوب را ضبط کنند. ما این تلاش بداهه را در فصل ۱، در سطح GUI، جایی که مشهود است، پوشش خواهیم داد، و سپس سعی میکنیم آن روح را در فصلهای اضافی حفظ کنیم.
به عبارت دیگر، کتاب Software Testing Strategies محدود به آزمایش دکمه \”فقط\” نیست، اما اتفاقی است که در دست افراد ماهر اتفاق میافتد که در طی فرایند باید در تمام سطوح مورد مطالعه و استفاده قرار گیرد.
دامنه کتاب ما در مورد تمام راههای یافتن وضعیت نرمافزار، به سرعت، با استفاده از کد است. ما اولین کسی خواهیم بود که اعتراف میکنیم که تصویر کاملی از کیفیت نرمافزار نیست. این شامل نحوه ایجاد الزامات خوب یا نحوه انجام بازرسیهای کد یا برنامههای جفت نمیشود. ما آزمایش را به عنوان یک مکانیسم بازخورد میبینیم، این تنها مورد نیست و کیفیت بیشتری از آن بازخورد وجود دارد.
فکر میکنیم \”فقط آزمایش\” برای یک کتاب بیش از حد کافی بود. این بازخورد مهم است. اغلب مورد غفلت قرار میگیرد. این اغلب ضعیف انجام میشود. بخش دوم کتاب ادغام تست را در یک فرآیند تحویل پوشش میدهد. بخش سوم \”تمرین سیاست\” را شامل میشود، در مورد چگونگی ارائه بازخورد که میتواند به طور مؤثر توسط سازمان استفاده شود.
بیشتر بخوانید: کتاب Introduction to Software Testing
اگر تا به حال شنیدهاید \”چرا ما آن را آزمایش نکردیم\”، \”چرا ما آن اشکال را پیدا نکردیم\”، یا شاید از همه بدتر، \”خوب، شما آن اشکال را پیدا کردید و آن را در اولویت قرار دادهاید همانطور که باید برطرف شود و ما اصرار داشتیم این میتواند به تأخیر بیفتد، اما چرا شما به طور مؤثرتری طرفداری نکردید؟ \”، پس کتاب Software Testing Strategies برای شما مناسب است. این کتاب همچنین برای شما مناسب است اگر:
اگر در نرمافزاری اشکالات خود را مشاهده میکنید که به نظر میرسد آشکار است که آرزو میکنید افراد دیگر گرفتار شوند.
اگر میخواهید در یافتن سریع اطلاعات بهتر شوید و به خوبی بیان کنید تا نتیجه روند را تغییر دهید.
اگر میخواهید راههایی برای استفاده از اطلاعاتی که پیدا میکنید برای کاهش میزان تزریق اشکال ارائه دهید.
اگر میخواهید بتوانید تشخیص دهید و توضیح دهید که چگونه تجارت کلیدی/پاداش را ایجاد کردهاید.
امیدوارم که تاکنون متوجه شوید که آزمایش کار جدی، بزرگسالی و مدیریت ریسک است. هر مبتدی میتواند این روند را دنبال کند، و هر تستر سطح متوسط میتواند بیشتر تیمهای نرمافزاری را در تأخیر در انتظار برای رفع چیزها قرار دهد. ارزش واقعی در آزمایش فراتر از آن است که در تصمیمگیریهای خطر/پاداش هوشمند، برای سرمایهگذاری منابع محدود در مدیریت ریسک سرمایهگذاری میکند.
شما میتوانید از این به عنوان سه سطح آزمایش فکر کنید. در سطح یک، حرکات اساسی استفاده از برنامه را به سادهترین روش طی میکنید. این \”مسیر شاد\” است. سطح دوم تستر در شکار اشکال است.
شخصی که در حال مشاهده تست است، کار خود را در مورد پیدا کردن اشکالات، یا همانطور که یک نفر یک بار آن را بیان میکند، \”با Glee\” میکند زیرا آنها \”توسعهدهندگان را گریه میکنند\”.
جایی که احتمالاً سطح اول بسیار قابل قبول است، سطح دوم میتواند در واقع با توسعه مخالف باشد. در سطح سوم است که ما میبینیم که چه مدت زمان سرمایهگذاری در چه خطرات به منظور \”فریب دادن\” در مورد کیفیت در حالی که حداقل اختلال در سرعت تحویل ایجاد میشود، سرمایهگذاری میکنیم. در بعضی موارد، پیدا کردن مشکلات در اوایل محصول میتواند سرعت تحویل را افزایش دهد.
کتاب Software Testing Strategies برای چه کسی است؟
این کتاب برای هرکسی است که میخواهد روند و طرز فکر تست نرمافزار را درک کند، ایدهها و روشهایی را که به آنها کمک میکند تا بهتر سیستمهایی را که با آنها کار میکنند، آزمایش کنند و از کسانی که نمیتوانند برای آنها صحبت کنند، استفاده کنند.
خود در فرآیند توسعه نرمافزار. توجه داشته باشید، این فرض نمیکند که شخصی که کتاب Software Testing Strategies را میخواند یک تستر نرمافزار اختصاصی است. ما هرکسی را که در زمینه توسعه نرمافزار مشارکت دارد، از جمله برنامهنویسان، مدیران محصول و پروژه، تحلیلگران تجارت، مدیران سیستم و هر کسی که علاقهای به نرمافزاری داشته باشد، سازمان خود را ایجاد میکند تا حد امکان و قدرتمند باشد.
آنچه کتاب Software Testing Strategies را پوشش میدهد:
فصل ۱، تست و تستهای طراحی، این فصل آزمایش را به عنوان یک فعالیت مدیریت ریسک معرفی میکند، با تمرکز برایدههای تست قدرتمند برای قطعات مهم نرمافزاری. در مورد تئوری خطا، آزمایشهای نگاشته شده و روشهای مختلف از جمله آزمایش مدل محور و خیس صحبت میشود.
فصل ۲ کتاب Software Testing Strategies، موضوعات اساسی در ابزار و اتوماسیون، به مشکلات متداول در اتوماسیون تست میپردازد و از سالها تجربه درس به اشتراک میگذارد. این مفاهیم مانند مشکل رگرسیون مین و مشکل جنگی را در بر میگیرد و با راه حلهایی برای این چالشهای اتوماسیون نتیجه میگیرد.
فصل ۳ کتاب Software Testing Strategies، تست برنامهنویسی، تمرکز بر تست توسعه دهنده و آزمایش واحد، توسعه آزمایش محور و آزمایش APIهای وب، از جمله موضوعات دیگر است. این با یک تمرین عملی در ایجاد تستهای واحد، با استفاده از روبی به عنوان نمونه نتیجه میگیرد.
فصل چهارم کتاب Software Testing Strategies، تستهای مشتری، به بررسی تفاوتهای ظریف اتوماسیون تست مشتری، بحث در مورد الگوهای اتوماسیون GUI، مشخصات به عنوان مثال و ابزارهای کم کد/بدون کد، هدف این است که خوانندگان بتوانند تجزیه و تحلیل و بهینهسازی تست رابط کاربری را انجام دهند.
فصل ۵ کتاب Software Testing Strategies، آزمایشهای تخصصی، به مناطق تخصصی آزمایش میپردازد و عملکرد و آزمایش بار، امنیت، دسترسی، بینالمللیسازی و آزمایشهای تنظیم شده را پوشش میدهد، هر کدام دارای چالشها و روشهای منحصر به فرد خود هستند.
فصل ۶ کتاب Software Testing Strategies، آزمایش مهارتهای مرتبط، فراتر از طراحی و اجرای آزمون را گسترش میدهد و بر مهارتهایی مانند شناخت اشکالات، برقراری ارتباط با مشکلات، برنامهریزی و مستندسازی کار و معیارها و تأثیرگذاری بر تغییر در فرآیندهای آزمایش متمرکز است.
فصل ۷ کتاب Software Testing Strategies، مدیریت دادههای آزمون، مسأله مدیریت دادههای آزمون را برطرف میکند و تکنیکهایی را برای ایجاد، ذخیره، ویرایش، حذف و بازیابی حالتهای داده برای هدایت آزمایش کارآمد و ابزارهای تست قابل اعتماد فراهم میکند.
فصل ۸ کتاب Software Testing Strategies، مدلهای تحویل و آزمایش، دامنه نحوه تعامل با مدلهای تحویل نرمافزار مانند آبشار، اسکرام و DevOps را گسترش میدهد. از این طریق، این فصل به خوانندگان کمک میکند تا تعامل بین آزمایش و این مدلها را درک و بهینه کنند.
فصل ۹ کتاب Software Testing Strategies، قطعات پازل آزمایش خوب، اجزای آزمایش مانند دستور العملها، پوشش و نقص را تجزیه میکند و خوانندگان را ترغیب میکند تا این عناصر را به یک استراتژی تست منسجم متناسب با نیازهای آنها تبدیل کنند.
فصل ۱۰ کتاب Software Testing Strategies، قرار دادن استراتژی آزمون خود، در فصل قبل، برای هدایت خوانندگان از طریق تجزیه و تحلیل حالتهای آزمایش فعلی، اولویتبندی خطرات و برقراری ارتباط و اجرای یک استراتژی جامع آزمون.
فصل ۱۱ کتاب Software Testing Strategies، آزمایش نرمافزار لاغر، تست نرمافزار لاغر را معرفی میکند و تکنیکهای مدیریت آزمایش و عملیات را ترکیب میکند. این موضوعاتی مانند هفت ضایعات، جریان، محدودیت و یک رویکرد لاغر به معیارها و اندازهگیری را در بر میگیرد.
فصل ۱۲ کتاب Software Testing Strategies، مطالعات موردی و گزارشهای تجربه، از مطالعات موردی و گزارشهای تجربه استفاده میکند، و درسها و استراتژیهای زندگی واقعی را از این زمینه ارائه میدهد و بینشهای عملی را در مورد چالشها و راه حلهای آزمایش ارائه میدهد.
فصل ۱۳ کتاب Software Testing Strategies، فعالیتهای آزمایش یا نقش آزمایش؟ ، به بررسی تفاوتهای ظریف چه کسی باید فعالیتهای آزمایش، بحث در مورد درگیریهای فرهنگی، تیمهای کاهش خطر و مدلهای مختلف آزمایش مانند تغییر چپ و آزمایش مداوم را بررسی میکند.
فصل ۱۴، فلسفه و اخلاق در آزمایش نرمافزار، به ابعاد فلسفی و اخلاقی آزمایش میپردازد. در این فصل محدودیتهای آزمایش، ارزش استدلال اخلاقی و اهمیت ارتباطات روشن در فرآیندهای آزمایش بررسی شده است.
فصل ۱۵، کلمات و زبان در مورد کار، بر ارتباطات متمرکز است و بر اهمیت زبان و زمینه دقیق در آزمایش، بررسی مدارس مختلف آزمایش فکر و تمایز بین روند و مهارت تأکید میکند.
فصل شانزدهم، استراتژی تست اعمال شده، مفاهیم کتاب Software Testing Strategies را در سناریوهای عملی، از جمله اجرای مرجع برای یک استراتژی تست تلفن همراه و یک بررسی مهم از هوش مصنوعی در آزمایش نرمافزار، ارائه میدهد، و یک دیدگاه جامع از برنامه استراتژی آزمایش ارائه میدهد.
سرفصلهای کتاب Software Testing Strategies:
- Software Testing Strategies
- Contributors
- About the authors
- About the reviewers
- Preface
- Part 1:The Practice of Software Testing
- Chapter 1: Testing and Designing Tests
- Chapter 2: Fundamental Issues in Tooling and Automation
- Chapter 3: Programmer-Facing Testing
- Chapter 4: Customer-Facing Tests
- Chapter 5: Specialized Testing
- Chapter 6: Testing Related Skills
- Chapter 7: Test Data Management
- Part 2:Testing and Software Delivery
- Chapter 8: Delivery Models and Testing
- Chapter 9: The Puzzle Pieces of Good Testing
- Chapter 10: Putting Your Test Strategy Together
- Chapter 11: Lean Software Testing
- Part 3:Practicing Politics
- Chapter 12: Case Studies and Experience Reports
- Chapter 13: Testing Activities or a Testing Role?
- Chapter 14: Philosophy and Ethics in Software Testing
- Chapter 15: Words and Language About Work
- Chapter 16: Testing Strategy Applied
- Index
- Other Books You May Enjoy
جهت دانلود کتاب Software Testing Strategies میتوانید پس از پرداخت، دریافت کنید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.