برنامه نویسی

روش رویایی من برای آزمایش

رویا

بیایید خودمان بچه نباشیم ، هیچ کس علاقه ای به نوشتن تست ندارد.
این رویای هر مهندس نرم افزار است که تست های تولید شده را به صورت خودکار مشاهده کنید.
اما از چه چیزی تولید شده است؟

در بیشتر پروژه ، هیچ روش رسمی برای مشخصات رفتار استفاده نمی شود ، اما حداقل توضیحات به زبان انگلیسی ساده وجود دارد.

به عنوان مثال ، برای توصیف a gcc مورد استفاده ساده ، می تواند باشد:

## Scenario: compiling and executing an hello word

- Given the new file `main.c`
```c
#include 
int main() {
printf("Hello, World!");
return 0;
}
```
- And given there is no `main` file

- When I successfully run `gcc main.c -o main`
- And  I run `main`

- Then the output is `Hello, World!`
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

این یک فایل Markdown ، با استفاده از یک چارچوب کلاسیک Gherkin ، کاملاً مناسب برای اسناد است.
و شامل تمام اطلاعات لازم برای اجرای آزمون است.

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

و این رویای من است: فقط می توانید DOC را اجرا کنید

بیایید چیزی را امتحان کنیم …

در بهار سال 2024 ، من با این ایده شروع به بازی کردم.
بیشتر تست های پایان به پایان من از همان چارچوب استفاده می کنند:

  • مقداری ورودی را تنظیم کنید
  • برنامه را با برخی از گزینه ها اجرا کنید
  • خروجی را بررسی کنید

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

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

در نهایت ، نمونه اولیه نه تنها افزایش فوری در بهره وری ، بلکه یک منحنی یادگیری سریع را نیز نشان داد.

من هم می خواهم!

خبر خوب ، این ابزار ، نامیده می شود bbt، اکنون در اینجا موجود است.
نصب در لینوکس و ویندوز آسان است.
(آن را در MACOS کامپایل می کند ، اما در حال حاضر از طرف من آزمایش نشده است).

نسخه فعلی 0.0.6 است ، به این معنی که BBT هنوز در مرحله اولیه توسعه است و برای بهبود باز است: نظرات ، موارد استفاده ، شیوه های خوب ، ایده ها ، نقاط درد بیش از این است که در اینجا مورد استقبال قرار می گیرند.

تصدیق

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

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

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