این روش تست کردن برنامه درسته؟

طرح مسئله:
یک برنامه cli داریم و یک server و میخوایم از صحت کارکرد کد ها مطمئن بشیم.

راه حل من:
اول میخواستم با subprocess کار کنم تا output ها رو capture کنم و بهش input بدم. دیدن کارکردن باهاش خیلی سخته و اعصاب خورد کنه.
اومدم ی سرور redis راه انداختم برای message queue.
کلاینت output هاشو میندازه تو redis و input هاشو ازش میگیره.

برنامه ای هم که تستش میکنه، خودش وصل میشه به سرور redis.

نحوه تست:
یک فایل bash که اول سرور و کلاینت و redis رو ران میکنه، بعد برنامه ای که قراره تستش کنه رو ران میکنه و در آخر همه process هارو kill میکنه.


میخواستم بدونم چنین نحوه تست کردن برنامه درسته؟
شما چی پیشنهاد میکنید؟
( تست رو end to end نوشتم )

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

5 پسندیده