AzLearn

تمرين إعادة البناء

ملخص اختبارات unittest

شغّل اكتشاف unittest المحلي واطبع ملخصاً مختصراً للنجاح أو الفشل.

python ~25 دقيقة متوسط
أعد بناء الكود Rebuild

هذا هو الكود. اكتبه بنفسك.

الكود المرجعي
import argparse
import sys
import unittest
from pathlib import Path


def run_tests(start: Path, pattern: str) -> unittest.result.TestResult:
    loader = unittest.TestLoader()
    suite = loader.discover(str(start), pattern=pattern)
    runner = unittest.TextTestRunner(verbosity=1)
    return runner.run(suite)


def main() -> None:
    parser = argparse.ArgumentParser(description="Run unittest discovery and print a compact summary.")
    parser.add_argument("start", type=Path, nargs="?", default=Path("."))
    parser.add_argument("--pattern", default="test*.py")
    args = parser.parse_args()

    result = run_tests(args.start, args.pattern)
    print(f"Ran: {result.testsRun}")
    print(f"Failures: {len(result.failures)}")
    print(f"Errors: {len(result.errors)}")
    sys.exit(0 if result.wasSuccessful() else 1)


if __name__ == "__main__":
    main()
اكتب هنا