Professional Documents
Culture Documents
Qa 5
Qa 5
5 გაკვეთილი
ტესტირების დონეები (Test levels)
Მაგ: რაიმე ველის ფუნქციონალის გატესტვა, მანამ სანამ ეს ველი დაემატება ვებ-გვერდზე.
Test levels
Integration level of testing - ინტეგრაცია ნიშნავს გაერთიანებას. Მაგ, ტესტირების ამ დონეზე ხდება
მოდულების გაერთიანება და მათი გატესტვა ერთანად.
ხდება end to end ტესტირება. ტესტირებამ უნდა აღმოაჩინოს როგორც ფუნქციონალური , ასევე
არაფუნქციონალური ხარვეზები.
Alpha testing გარე პირი ტესტავს დეველოპმენტზე, ანუ მომხმარებელი იყენებს პროგრამულ
პროდუქტს კომპანიის სივრცეში. მაგალითად, ხდება ფოკუს-ჯგუფების მოწვევა კომპანიაში, სადაც
კომპანიის სატესტო მოწყობილობებზე ხდება აპლიკაციის ჩაწერა და ტესტირება, გვაწვდის
უკუკავშირს
Beta testing - გარე პირი ტესტავს დეველოპმენტის გარეთ, ანუ შერჩეულ მომხმარებელს აქვს
საშუალება, რომ ჩვენი პროგრამული პროდუქტი გამოიყენოს თავის მოწყობილობაზე საკუთარ
ადგილმდებარეობაზე.
მიზნები:
სტატიკური ტესტირების საგანი შეიძლება იყოს: მოთხოვნების დოკუმენტი, დიზაინის დოკუმენტი, კოდი,
ტესტირების დოკუმენტები და ა.შ
Dynamic testing - დინამიური ტესტირება ტესტავს პროგრამულ პროდუქტს კოდის შესრულების დახმარებით.
ტერმინი Work product – ყველა დოკუმენტი, რომელიც იქმნება პროგრამული უზრუნველყოფის სასიცოცხლო ციკლის
განმავლობაში.
განსხვავება სტატიკური და
დინამიური ტესტირებას შორის
★ Author
★ Management
★ Facilitator (Moderator)
★ Review Leader
★ Reviewers
★ Scribe (Recorder)
სტატიკური ტესტირება
Review -ები შეიძლება კლასიფიცირდეს სხვადასხვა ატრიბუტის მიხედვით. ქვემოთ ჩამოთვლილია
მიმოხილვების ოთხი ყველაზე გავრცელებული ტიპი და მათთან დაკავშირებული ატრიბუტები :
ISTQB-ს მიხედვით არსებობს ტესტირების ტიპების 4 ძირითადი ჯგუფი (ისინი დაჯგუფებულია ხარისხის
მახასიათებლების მიხედვით ):
● Functional
● Non-functional
● White-box (Structural)
● Change related
Test Types
მაგალითად:
(https://www.youtube.com/watch?v=WMQqfdEjcAY)
Load testing - performance ტესტირების ჯგუფს მიეკუთვნება და ეს არის ეტაპობრივად დატვირთვის ტესტირება დასაშვები საზღვრების
ფარგლებში. პროდუქტი შეიძლება დავტვირთოთ ქმედებებით ან მონაცემებით. (მონაცემებით პროდუქტის ეტაპობრივ დატვირთვას ეწოდება
Volume testing ). Load testing იზომება დროიში. Მაგ: საიტზე ერთდროულად იმყოფება 100 მომხმარებელი., ვამოწმებთ 100 მომხმარებლის
მომსახურებას რა დროში ახორციელებს პროგრამა , 200 მომხმარებლის მომსახურებას რა დროში და ა.შ.
Stress testing - ესეც performance ტესტირების ჯგუფს მიეკუთვნება და ვამოწმებთ როგორ იქცევა პროგრამა ძალიან დიდი დატვირთვის
შემთხვევაში (დატვირთვის ზღვარს საკმაოდ მაღლა). Მაგ: თუ დასაშვები მომხმარებლების რეალური რაოდენობა არის 100000 მომხმარებელი
ერთდროულად, ჩვენ ვამოწმებთ 100 მილიონი მომხმარებლის ერთდროულად შემოსვლის დროს რა მოხდება, რა მოუვათ იმ მომხმარებლებს
ვინც უკვე იყვნენ საიტზე შემოსულები, რას დაინახავენ ისინი ვინც ზღვარს ზემოთ შემოვლენ, რა მოუვა მონაცემებს, რომლებზე მუშაობაც
დაწყებული ჰქონდათ მომხმარებლებს?
Capacity testing - ესეც performance ტესტირების ჯგუფს მიეკუთვნება. რეალურად დასაშვები დატვირთვის ზღვარი განსხვავდება
ოფიციალური დასაშვები დატვირთვის ზღვარისგან. ამ ტიპის ტესტირებით დგინდება რეალური დატვირთვის ზღვარი, ანუ რა დატვირთვის
შემდეგ გაფუჭდება რეალურად პროდუქტი. მაგ: ლიფტს აწერია დასაშვები წონა არის 600 კგ, რა თქმა უნდა 601, 602.. კილოგრამ
დატვირთვაზე ლიფტი არ გაფუჭდება, მაგრამ ეტაპობრივი დატვირთვით ვამოწმებთ სად არის რეალური ზღვარი პროდუქტის მწყობრიდან
გამოსვლლის. ეს იმისთვისაც გვჭირდება, რომ შევასრულოთ სტრეს ტესტები.
Test Types
Non-functional testing - Security testing
ტარდება იმისთვს, რომ პასუხო გაგვცეს კითხვაზე რამდენად უსაფრთხოა და დაცულია ჩვენი პროდუქტი, რამდენად არის Მომხმარებლის
მონაცემები დაცული. უსაფრთხოების ტესტირებისტვის არსებობს ცალკე სპეციალიზირებული ტესტერები. Მვენ ვამოწმებთ მაგ:
● Re-testing / Confirmation testing - ნიშნავს იმას რომ აღმოჩენილი და აღწერილი ხარვეზი, რომელიც გაასწორა
პროგრამისტმა უნდა გავტესტოთ თავიდან და დავრწმუნდეთ მის სისწორეში. (გავიხსენოთ ბაგ-რეპორტის
სასიცოცხლო ციკლი)
● Regression testing - არის ცვლილების შემდეგ ტესტირება, მაგრამ იტესტება ის ნაწილი, რმელშიც ცვლილება არ
შესულა . ანუ უნდა გადავამოწმოთ, რომ 1 კომპონენტში შესულმა ცვლილებამ ნამდვილად არანაირი იმფაქტი არ
მოახდინა 2 კომპინენტზე, რომელიც საერთოდ არანაირად არ არის 1 კომპინენტთან დაკავშირებული.
რეგრესიული ტესტირება დიდ ადგილს იკავებს პროდუქტის შექმნის სასიცოცხლო ციკლის მეინთენენსის ეტაპზე,
ანუ პროდაქშენზე როდესაც შედის გარკვეული ცვლილება, აუცილებელია დარწმუნებული ვიყოთ იმაში, რომ
უკვე მომუშავე ფუნქციონალს არ დააზიანებს.