Sobes.tech
Middle

როგორ შევარჩიოთ ტესტები რეგრესიული ტესტირების ჩატარებისთვის?

sobes.tech AI

პასუხი AI-სგან

რეგრესიული ტესტების არჩევისას მე ვეყრდნობი შემდეგ კრიტერიუმებს:

  • კრიტიკული ბიზნეს-პროცესების დაფარვის ტესტები: შემოწმებენ ძირითად ფუნქციებს, რომლებიც განაპირობებს სისტემის მუშაობას.
  • მატერიალების, სადაც ცვლილებების რაოდენობა ყველაზე მეტია, დაფარვის ტესტები: ფოკუსირებულია სისტემის იმ ნაწილებზე, რომლებიც ბოლო ცვლილებების ან გაუმჯობესებების შედეგად არის დაზარალებული.
  • მაღალი სიხშირით გამოვლენილი დეფექტების მქონე სფეროები: შეიცავს სცენარებს, სადაც ადრე გამოვლინდა დეფექტები.
  • ახალი ფუნქციონალობის დაფარვის ტესტები: შემოწმებს დამატებული შესაძლებლობების სწორ მუშაობას და მათი ინტეგრაციას არსებული სისტემასთან.
  • მოდულებს შორის ინტეგრაციის დაფარვის ტესტები: დარწმუნებული არიან, რომ სისტემის სხვადასხვა ნაწილები სწორად ურთიერთქმედებენ.
  • ყველაზე რთული და რისკიანი ნაწილების დაფარვის ტესტები: მიმართულია ყველაზე არასტაბილურ უბნებზე, სადაც მაღალია პრობლემების წარმოქმნის ალბათობა.
  • ავტომატიზებული ტესტები: ავტომატიზებული ტესტები იდეალურია რეგრესიებისთვის მათი სისწრაფისა და სანდოობის გამო.

ეფექტური არჩევანისთვის მე ასევე ვიყენებ:

  • კოდის ბაზის ცვლილებების ანალიზს.
  • დეფექტების ისტორიის და მათი ლოკალიზაციის მონაცემებს.
  • ფუნქციონალობების პრიორიტეტიზაციას პროდუქტის მენეჯმენტის მონაწილეობით.
  • წინათ ჩატარებული რეგრესიული ტესტების შედეგებს.

ცვლილებების მასშტაბისა და ხელმისაწვდომი რესურსების მიხედვით, მე ვარჩევ სრულ სეტს ან მცირე (smoke, sanity) სეტს. მცირე სეტში ვამჯობინებ ტესტებს, რომლებიც დაფარავს ძირითად და ყველაზე რისკიან სცენარებს.

რეგრესიული ტესტების ფოლდერის სტრუქტურის მაგალითი (ავტომატიზებული ტესტებისთვის):

# tests/
#   regression/
#     critical_paths/
#       test_login.py
#       test_create_order.py
#     new_features/
#       test_new_payment_method.py
#     bug_fixes/
#       test_fixed_issue_123.py
#     integration/
#       test_order_payment_flow.py
#     smoke/
#       test_basic_ui_elements.py
#   ... სხვა ტიპის ტესტები