زبان برنامه نویسی پایتون: آزمون‌های پیشرفته با pytest - کوییز

آزمون‌های پیشرفته با pytest

کدام یک از دکوراتورهای pytest برای اجرای یک تابع آزمون فقط در صورتی که یک شرط خاص برقرار باشد، استفاده میشود؟
  1. pytest.mark.skip
  2. pytest.mark.xfail
  3. pytest.mark.skipif
  4. pytest.mark.usefixtures

گزینه صحیح: 3

توضیح: دکوراتور pytest.mark.skipif به شما امکان میدهد که اجرای یک تست را بر اساس یک شرط خاص نادیده بگیرید.

کدام ابزار در pytest برای مدیریت fixtures (تجهیزات) استفاده میشود؟
  1. marks
  2. fixtures
  3. plugins
  4. param

گزینه صحیح: 2

توضیح: pytest از concept "fixtures" برای مدیریت منابعی که تستها به آنها نیاز دارند استفاده میکند.

کدام گزینه بهترین رویکرد برای نوشتن تستهای خوانا و قابل نگهداری با pytest است؟
  1. استفاده از نامهای طولانی و جزئی برای تستها
  2. استفاده از یک تابع برای چندین assertion
  3. نگه داشتن هر test case در یک تابع مجزا
  4. عدم استفاده از assert

گزینه صحیح: 3

توضیح: بهترین رویکرد این است که هر test case در تابع مجزای خود قرار گیرد تا خوانایی و قابلیت نگهداری افزایش یابد.

کدام گزینه به pytest اجازه میدهد تا تستها را با پارامترهای مختلف اجرا کند؟
  1. pytest.mark.parametrize
  2. pytest.fixture
  3. pytest.raises
  4. pytest.mark.skip

گزینه صحیح: 1

توضیح: دکوراتور pytest.mark.parametrize برای اجرای یک تابع تست با مجموعهای از پارامترهای مختلف استفاده میشود.

کدام یک از موارد زیر، مزیت استفاده از pytest نسبت به unittest است؟
  1. پیچیدگی بیشتر در نوشتن تستها
  2. عدم پشتیبانی از fixtures
  3. سینتکس سادهتر و قابلیتهای گستردهتر
  4. عدم امکان discovery خودکار تستها

گزینه صحیح: 3

توضیح: pytest به دلیل سینتکس سادهتر، پشتیبانی از fixtures و discovery خودکار تستها، مزایای زیادی نسبت به unittest دارد.

کدام روش برای تأیید اینکه یک استثنا (exception) خاص در طول اجرای تست رخ میدهد، در pytest استفاده میشود؟
  1. assert raises Exception
  2. with pytest.raises(Exception)
  3. checkexception(Exception)
  4. expect(Exception)

گزینه صحیح: 2

توضیح: با استفاده از with pytest.raises(Exception) میتوانید اطمینان حاصل کنید که یک استثنای خاص در طول اجرای بلاک کد رخ میدهد.

کدام ویژگی pytest به شما امکان میدهد که وابستگیهای تست را مدیریت کنید؟
  1. Plugins
  2. Fixtures
  3. Markers
  4. Parametrization

گزینه صحیح: 2

توضیح: Fixtures در pytest برای مدیریت وابستگیها و پیکربندی لازم برای اجرای تستها استفاده میشوند.

چگونه میتوان خروجی یک تست را که نباید هیچ استثنایی رخ دهد، با pytest تأیید کرد؟
  1. با استفاده از assert True
  2. با استفاده از assert None
  3. با اطمینان از اینکه هیچ استثنایی رخ نمیدهد
  4. با استفاده از assert False

گزینه صحیح: 3

توضیح: اگر هیچ استثنایی رخ ندهد، تست با موفقیت پاس میشود.

کدام دکوراتور pytest برای نشان دادن اینکه یک تست انتظار میرود که ناموفق باشد (xfail) استفاده میشود؟
  1. pytest.mark.skip
  2. pytest.mark.skipif
  3. pytest.mark.xfail
  4. pytest.mark.usefixtures

گزینه صحیح: 3

توضیح: pytest.mark.xfail برای مواردی استفاده میشود که انتظار دارید یک تست به طور موقت ناموفق باشد.

کدام گزینه برای مدیریت و عیبیابی تستها در پروژههای بزرگ با pytest توصیه میشود؟
  1. نوشتن تستهای طولانی و پیچیده
  2. نادیده گرفتن fixtures
  3. استفاده از ساختار پوشهبندی منطقی و نامگذاری استاندارد برای تستها
  4. اجرای تمام تستها به صورت دستی

گزینه صحیح: 3

توضیح: ساختاردهی مناسب پوشهها و نامگذاری صحیح فایلها و توابع تست، مدیریت و عیبیابی را تسهیل میکند.

منبع آموزشی این مطلب

این مطلب برگرفته از محصول آموزشی «مرجع جامع و کاربردی پایتون: از اصول تا پیشرفته با David M. Beazley» است

برای مشاهده توضیحات کامل، جزئیات دوره و دریافت محصول، روی دکمه زیر کلیک کنید.

اطلاعات بیشتر و دریافت محصول