Sobes.tech
Junior

რა არის გამოყენების სცენარებზე დაფუძნებული ტესტირება?

sobes.tech AI

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

მომხმარებლის სცენარების (use case testing) ტესტირების ტექნიკა არის ტესტის დიზაინის მეთოდი, რომელიც ეფუძნება ტესტის შემთხვევების (ტესტ-კეისების) შემუშავებას სისტემასთან მომხმარებლის ურთიერთქმედებების აღწერილობებიდან. ის ორიენტირებულია სისტემის ფუნქციონალობის შემოწმებაზე საბოლოო მომხმარებლის თვალსაზრისით, იმიტირებს ტიპიურ მოქმედებების სერიის, რომელიც მომხმარებელი ახორციელებს კონკრეტული მიზნის მისაღწევად.

ძირითადი მახასიათებლები:

  • ძირითადი: გამოყენების სცენარები (use cases) ან მომხმარებლის ისტორიები (user stories).
  • მიზანი: გადაამოწმოს, პასუხობს თუ არა სისტემა გამოყენების სცენარებში აღწერილ ფუნქციონალურ მოთხოვნებს.
  • ფოკუსი: მომხმარებლის ურთიერთქმედებაზე სისტემასთან და მონაცემთა ნაკადზე.
  • შედეგი: ტესტის შემთხვევების ნაკრები, რომელიც მოიცავს როგორც ძირითადი ("happy path"), ასევე ალტერნატიულ და ექსცეპციურ ნაკადებს.

პროგრამული ეტაპები:

  1. გამოყენების სცენარების იდენტიფიცირება.
  2. სცენარების აღწერილების შემუშავება (წინაპირობები, ნაბიჯები, შედეგები).
  3. ძირითადი, ალტერნატიული და ექსცეპციური ნაკადების განსაზღვრა.
  4. თითოეული ნაკადისათვის ტესტის შემთხვევების შემუშავება.
  5. ტესტების ჩატარება და შედეგების ანალიზი.

მაგალითი ("მომხმარებლის შესვლა" სცენარის ნაწილი):

ნაბიჯი მოქმედება სისტემა
1 მომხმარებელი ხსნის შესვლის გვერდს. გამოჩნდება შესვლის ფორმა.
2 მომხმარებელი აკრეფს სწორი ლოგინს.
3 მომხმარებელი აკრეფს სწორი პაროლს.
4 მომხმარებელი კლიკს "შესვლა" ღილაკზე. სისტემა ამოწმებს მონაცემებს.
5 მომხმარებელი გადამისამართებულია მთავარი გვერდზე.

ნაკადების ტიპები:

  • ძირითადი (Main Flow): იდეალური სერიის მოქმედებები წარმატებული შესრულების შემთხვევაში.
  • ალტერნატიული (Alternative Flow): ძირითადი ნაკადის ვარიანტი, რომელიც წარმატებით დასრულდება, მაგრამ სხვა ნაბიჯებით (მაგალითად, სოციალური ქსელების მეშვეობით შესვლა).
  • ექსცეპციური (Exceptional Flow): სიტუაცია, როდესაც სცენარის შესრულება დასრულდება შეცდომით ან არასრულყოფილი შედეგით (მაგალითად, არასწორი პაროლის შეტანა).

უპირატესობები:

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