ეკვივალენტური დაყოფა
- ეკვივალენტური დაყოფის მიზანი
- ეკვივალენტური დაყოფის აღწერა
- ეკვივალენტური დაყოფის მაგალითი
- გასატეტი ობიექტის მახასიათებლები
- 1-ლი ნაბიჯი: ფუნქციური ნაკრების იდენტიფიკაცია (Feature sets - FS)
- მე-2 ნაბიჯი: სატესტო პირობების განსაზღვრა
- მე-3 ნაბიჯი: ტესტირების დაფარვის ობიექტების განსაზღვრა
- მე-4 ნაბიჯი: ტესტ ქეისების განსაზღვრა
- ვარიანტები
- ცხრილი 1 - ტესტ ქეისები შემავალი მნიშვნელობისთვის - გამოცდის ქულა
- ცხრილი 2 - ტესტ ქეისები შემავალი მნიშვნელობისთვის - საგამოცდო ნაშრომი
- ცხრილი 3 - ტესტ ქეისები არავალიდური შემავალი მნიშვნელობებისთვის - გამოცდის ქულა
- ცხრილი 4 - ტესტ ქეისები არავალიდური შემავალი მნიშვნელობებისთვის - საკურსო ნამუშევრის ქულა
- ცხრილი 5 - ტესტ ქეისები ვალიდური გამომავალი მნიშვნელობებისთვის - სრული ქულა
- ცხრილი 6 - ტესტ ქეისები არა ვალიდური გამომავალი მნიშვნელობისთვის - სრული ქულა
- ვარიანტები
ეკვივალენტური დაყოფის მიზანი
ეკვივალენტური დაყოფის მიზანია, რომ შეიქმნას ტესტ ქეისების პაკეტი, რომელიც დაფარავს გასატესტი ობიექტის შემავალ და გამავალ დანაყოფებს ეკვივალენტური დაყოფის დაფარვის შერჩეული დაფარვის დონით. ეკვივალენტური დაყოფა დაფუძნებულია სტრუქტურაზე, რომელშიც გასატესტი ობიექტის შემავალი და გამომავალი მნიშვნელობები დაყოფილია კლასებად მოთხოვნებიდან გამომდინარე. თითოეული კლასი აღქმულია ისევე, როგორც გასატესტი ობიექტი. შესაბამისად ერთ ეკვივალენტურ დანაყოფში ნებისმიერი მნიშვნელობის ტესტირების შედეგი შეგვიძლია ჩავთვალოთ ამ დანაყოფის ნებისმიერი მნიშვნელობის ტესტირების შედგად.
ეკვივალენტური დაყოფის აღწერა
ეკვივალენტური დაყოფა 1 იყენებს მოდელს, რომელიც გასატესტ ობიექტს ყოფს შემავალი და გამავალ მნიშვნელობების შესაბამის ნაწილებად; მოიხსენიებენ როგორც "დანაყოფებს (partitions)" ან "ეკვივალენტურ კლასებს (equivalence classes)". თითოეული დანაყოფი განსაზღვრავს გასატესტ პირობას და მოველით, რომ ყოველ დანაყოფში არსებულ ნებისმიერ მნიშვნელობის გამოყენებისას სისტემის ქცევა იდენტურია (თითოეული მათგანი ერთმანეთის შესაბამისი, ანუ ეკვივალენტურია). ეკვივალენტური დანაყოფები განისაზღვრება, როგორც ვალიდური ის ალავალიდური შემავალი და გამავალი მნიშვნელობებისთვის.
სატესტო ობიექტის დანაწევრება შესაძლებელია, როგორც რიცხვითი ისე ანბანური მნიშვნელობებით; ანბანური მნიშვნელობები თავის მხრივ შესაძლოა დაიყოს მაღალი და დაბალი რეგისტრის სიმბოლოებად, სპეციალურ სიმბოლოებად და ა.შ. რაც დამოკიდებულია ტესტირების საჭიროებაზე.
ეკვივალენტური დაყოფის მაგალითი
ქვემოთ განხილულია ეკვივალენტური დაყოფის მაგალითი, რომელიც მომზადებულია პროგრამული უზრუნველყოფის ტესტირების სტანდარტის 2 დოკუმენტში აღწერილი პროცესის შესაბამისად.
სტანდარტი ამ პროცესს შემდეგ ნაბიჯებად განსაზღვრავს:
- ფუნქციური ნაკრების იდენტიფიკაცია ტესტირებისათვის.
- სატესტო პირობების განსაზღვრა.
- ტესტირების დაფარვის ობიექტების განსაზღვრა.
- ტესტ ქეისების განსაზღვრა.
გასატეტი ობიექტის მახასიათებლები
განვიხილოთ გასატესტი ობიექტი „შეფასების გენერატორი“ შემდეგი მახასიათებლებით:
კომპონენტი იღებს გამოცდის შედეგს (მაქსიმალური მნიშვნელობა: 75) და საკურსო ნამუშევრის (ს.ნ.) შეფასებას (მაქსიმალური მნიშვნელობა: 25), როგორც შემავალ მნიშვნელობას. კომპონენტი გამომავალ მნიშვნელობად განსაზღვრავს შეფასებას "A"-დან "D"-მდე. შეფასება დაგენერირებულია მთლიანი ქულის დათვლის შედეგად, რომელიც აჯამებს გამოცდისა და ს.ნ.-ის ქულას შემდეგნაირად:
- "A" - ქულა მეტია ან ტოლი 70-ის.
- "B" - ქულა მეტია ან ტოლი 50-ის, მაგრამ ნაკლებია 70-ზე.
- "C" - ქულა მეტია ან ტოლი 30-ის, მაგრამ ნაკლებია 50-ზე.
- "D" - ქულა ნაკლებია 30-ზე.
თუ დაფიქსირებულია არავალიდური შემავალი მნიშვნელობა (მაგ.: ქულა მოსალოდნელ დიაპაზონს გარეთაა), მაშინ შეცდომის შეტყობინება (შ.შ.) გენერირდება. ყველა შემავალი მნიშვნელობა არის მთელი რიცხვი.
1-ლი ნაბიჯი: ფუნქციური ნაკრების იდენტიფიკაცია (Feature sets - FS)
მოთხოვნებში მხოლოდ ერთი გასატესტი ობიექტია განსაზღვრული, მხოლოდ ერთი ფუნქციაა, რომელსაც ჭირდება განსაზღვრა:
- FS1: "შეფასების გენერატორის" ფუნქცია
მე-2 ნაბიჯი: სატესტო პირობების განსაზღვრა
ეკვივვალენტურ დაყოფაში, ეკვივალენტური დანაყოფები არის ტესტირების პირობები (Test conditions - TCOND). ეკვივალენტური დანაყოფები იდენტიფიცირდება, როგორც შემავალი, ისე გამავალი მნიშვნელობებით. ვალიდური და არავალიდური შემავალი და გამავალი მნიშვნელობები მხედველობაშია მიღებული.
დანაყოფი ორი შემავალი მნიშვნელობისთვის არის განსაზღვრული. ვალიდური დანაყოფები შეიძლება აღიწეროს შემდეგნაირად:
ტესტირების პირობა | ეკვივალენტური დანაყოფი | ფუნქციური ნაკრები |
---|---|---|
TCOND1: | 0 <= გამოცდის ქულა <= 75 | FS1 |
TCOND2: | 0 <= ს.ნ.-ის ქულა <= 25 | FS1 |
ყველაზე თვალსაჩინო არავალიდური დანაყოფები გამომდინარეობს შემავალი მნიშვნელობებიდან და შეიძლება აღიწეროს შემდეგნაირად:
ტესტირების პირობა | ეკვივალენტური დანაყოფი | ფუნქციური ნაკრები |
---|---|---|
TCOND3: | გამოცდის ქულა < 0 | FS1 |
TCOND4: | გამოცდის ქულა > 75 | FS1 |
TCOND5: | ს.ნ.-ის ქულა < 0 | FS1 |
TCOND6: | ს.ნ.-ის ქულა > 25 | FS1 |
მნიშვნელობების დაყოფილი დიაპაზონები შეიძლება წარმოდგენილი იყოს ილუსტრაციის სახით. შესაბამისად, შემავალი მნიშვნელობისთვის, გამოცდის ქულისთვის ჩვენ ვიღებთ ასეთ სურათს:
ხოლო შემავალი მნიშვნელობისთვის, ს.ნ.-ის ქულისთვის ჩვენ ვიღებთ ასეთ სურათს:
ნაკლებ სავარაუდო არავალიდური შემავალი მნიშვნელობის დანაყოფები შესაძლოა მოიცავდეს სხვა მონაცემის ტიპებს, მაგალითად არარიცხვითი მნიშვნელობები. ასე, რომ შეგვიძლია შევადგინოთ შემდეგი ეკვივალენტური დანაყოფები:
ტესტირების პირობა | ეკვივალენტური დანაყოფი | ფუნქციური ნაკრები |
---|---|---|
TCOND7: | გამოცდის ქულა = შერეული რიცხვი | FS1 |
TCOND8: | გამოცდის ქულა = ანბანური მნიშვნელობა | FS1 |
TCOND9: | გამოცდის ქულა = სპეციალური სიმბოლო | FS1 |
TCOND10: | ს.ნ.-ის ქულა = შერეული რიცხვი | FS1 |
TCOND11: | ს.ნ.-ის ქულა = ანბანური მნიშვნელობა | FS1 |
TCOND12: | ს.ნ.-ის ქულა = სპეციალური სიმბოლო | FS1 |
შემდეგი, დანაყოფები ვალიდური გამომავალი მნიშვნელობებისთვის შეიძლება აღიწეროს შემდეგნაირად:
ტესტირების პირობა | ეკვივალენტური დანაყოფი | ფუნქციური ნაკრები |
---|---|---|
TCOND13: | "A" მიღებულია შემდეგი მნიშვნელობით: 70 <= სრული ქულა <= 100 | FS1 |
TCOND14: | "B" მიღებულია შემდეგი მნიშვნელობით: 50 <= სრული ქულა < 70 | FS1 |
TCOND15: | "C" მიღებულია შემდეგი მნიშვნელობით: 30 <= სრული ქულა < 50 | FS1 |
TCOND16: | "D" მიღებულია შემდეგი მნიშვნელობით: 0 <= სრული ქულა < 30 | FS1 |
TCOND17: | "შეცომის შეტყობინება" (შ.შ) განპირობებულია შემდეგი მნიშვნელობით: სრული მნიშვნელობა > 100 | FS1 |
TCOND18: | "შეცომის შეტყობინება" (შ.შ) განპირობებულია შემდეგი მნიშვნელობით: სრული მნიშვნელობა < 0 | FS1 |
TCOND19: | "შეცომის შეტყობინება" (შ.შ) განპირობებულია შემდეგი მნიშვნელობით: არარიცხვითი შემავალი მნიშვნელობა | FS1 |
სადაც, სრული მნიშვნელობა = გამოცდის ქულა + საკურსო ნამუშევრის ქულა. ყურადღება მიაქციეთ, რომ "შეცდომის შეტყობინება" მიჩნეულია ვალიდურ მნიშვნელობად, რადგან ის არის განსაზღვრული მნიშვნელობა.
ეკვივალენტური დაყოფა და ზღვრები სრული შეფასებისთვის ილუსტრირებულია ვემოთ მოცემულ სურათზე.
არავალიდური გამომავალი მნიშვნელობა შეიძლება იყოს ნებისმიერი გამომავალი მნიშვნელობა, რომელიც განსხვავდება აღწერილი ხუთი მნიშვნელობისგან. შესაძლოა გამოწვევას წარმოადგენდეს განუსაზღვრელი გამომავალი მნიშვნელობების იდენტიფიცირება. თუმცა, ის უნდა იყოს მხედველობაში მიღებული, რადგან თუ შევძლებთ მის გამოწვევას, გვქონდეს იდენტიფიცირებადი ხარვეზი სატესტო ობიექტიდან ან მისი მახასიათებლებიდან გამომდინარე. ამ კონკრეტული მაგალითისთვის სამი განუსაზღვრელი გამომავალი მნიშვნელობაა იდენტიფიცირებული და ნაჩვენები ქვემოთ. ეკვივალენტური დაყოფის ეს ასპექტი ძალიან სუბიექტურია და სხვადასხვა ტესტერების მიერ შესაძლოა განსხვავებულად იდენტიფიცირდეს.
ტესტირების პირობა | ეკვივალენტური დანაყოფი | ფუნქციური ნაკრები |
---|---|---|
TCOND20: | გამომავალი მნიშვნელობა = 'E', ეს ზედმეტი შეფასება შესაძლოა შეცდომით იყოს იმპლემენტირებული საერთო ქულისთვის 0-დან 15-მდე | FS1 |
TCOND21: | გამომავალი მნიშვნელობა = 'A+', ეს ზედმეტი შეფასება შესაძლოა შეცდომით იყოს იმპლემენტირებული საერთო ქულისთვის 90-დან 100-მდე | FS1 |
TCOND22: | გამომავალი მნიშვნელობა = 'null', შესაძლოა დაგენერირდეს 'null' გამომავალი მნიშვნელობა | FS1 |
მე-3 ნაბიჯი: ტესტირების დაფარვის ობიექტების განსაზღვრა
ეკვივალენტურ დაყოფაში, ტესტირების დაფარვის ობიექტებს წარმოადგენს დანაყოფები, რაომლებიც განისაზღვრა წინა ნაბიჯზე (ე.ი. სატესტო პირობები წარმოადგენენ ტესტირების დაფარვის ობიექტებს ამ ტექნიკაში). ასე, რომ შემდეგი ტესტირების დაფარვის ობიექტები შეიძლება განისაზღვროს:
ტესტირების დაფარვა | ეკვივალენტური დანაყოფი | ტესტირების პირობა |
---|---|---|
TCOVER1: | 0 <= გამოცდის ქულა <= 75 | TCOND1 |
TCOVER2: | 0 <= ს.ნ.-ის ქულა <= 25 | TCOND2 |
TCOVER3: | გამოცდის ქულა < 0 | TCOND3 |
TCOVER4: | გამოცდის ქულა > 75 | TCOND4 |
TCOVER5: | ს.ნ.-ის ქულა < 0 | TCOND5 |
TCOVER6: | ს.ნ.-ის ქულა > 25 | TCOND6 |
TCOVER7: | გამოცდის ქულა = შერეული რიცხვი | TCOND7 |
TCOVER8: | გამოცდის ქულა = ანბანური მნიშვნელობა | TCOND8 |
TCOVER9: | გამოცდის ქულა = სპეციალური სიმბოლო | TCOND9 |
TCOVER10: | ს.ნ.-ის ქულა = შერეული რიცხვი | TCOND10 |
TCOVER11: | ს.ნ.-ის ქულა = ანბანური მნიშვნელობა | TCOND11 |
TCOVER12: | ს.ნ.-ის ქულა = სპეციალური მნიშვნელობა | TCOND12 |
TCOVER13: | "A" განპირობებულია შემდეგი მნიშვნელობით: 70 <= სრული ქულა <= 100 | TCOND13 |
TCOVER14: | "B" განპირობებულია შემდეგი მნიშვნელობით: 50 <= სრული ქულა < 70 | TCOND14 |
TCOVER15: | "C" განპირობებულია შემდეგი მნიშვნელობით: 30 <= სრული ქულა < 50 | TCOND15 |
TCOVER16: | "D" განპირობებულია შემდეგი მნიშვნელობით: 0 <= სრული ქულა < 30 | TCOND16 |
TCOVER17: | "შეცდომის შეტყობინება (შ.შ.)" განპირობებულია შემდეგი მნიშვნელობით: სრული ქულა > 100 | TCOND17 |
TCOVER18: | "შეცდომის შეტყობინება (შ.შ.)" განპირობებულია შემდეგი მნიშვნელობით: სრული ქულა < 0 | TCOND18 |
TCOVER19: | "შეცდომის შეტყობინება (შ.შ.)" განპირობებულია შემდეგი მნიშვნელობით: არარიცხვითი შემავალი მნიშვნელობა | TCOND19 |
TCOVER20: | გამომავალი მნიშვნელობა = "E" | TCOND20 |
TCOVER21: | გამომავალი მნიშვნელობა = "A+" | TCOND21 |
TCOVER22: | გამომავალი მნიშვნელობა = "null" | TCOND22 |
მე-4 ნაბიჯი: ტესტ ქეისების განსაზღვრა
ვარიანტები
დანაყოფებისა და ტესტირების დაფარვის ობიექტების იდენტიფიცირების შემდეგ იქმნება ტესტ ქეისები, რომლებმაც უნდა დაფარონ თითოეული დაფარვის ობიექტი.
თითოეული ამ ტესტ ქეისისთვის განისაზღვრება მხოლოდ ერთი დაფარვის ობიექტი. სულ იდენტიფიცირებულია 22 დაფარვის ობიექტი, შესაბამისად იდენტიფიცირდება 22 ტესტ ქეისი.
დანაყოფებთან დაკავშირებული ტესტ ქეისები, რომლებიც შემავალ მნიშვნელობებზეა დამოკიდებულია, ნაჩვენებია ქვემოთ. შენიშნეთ, რომ საკურსო ნამუშევრისთვის შემავალ მნიშვნელობად განსაზღვრულია 15. აღნიშნული მნიშვნელობა გამოყენებულია ყველა ტესტ ქეისში მოცემული პირობისთვის.
ცხრილი 1 - ტესტ ქეისები შემავალი მნიშვნელობისთვის - გამოცდის ქულა
ტესტ ქეისი | 1 | 2 | 3 | |
---|---|---|---|---|
1. | შემავალი მნიშვნელობა (გამოცდის ქულა) | 60 | -10 | 93 |
2. | შემავალი მნიშვნელობა (ს.ნ.-ის ქულა) | 15 | 15 | 15 |
3. | სრული ქულა (გამოანგარიშებული) | 75 | 5 | 108 |
4. | ტესტირების დაფარვის ობიექტი | TCOVER1 | TCOVER3 | TCOVER4 |
5. | გატესტილი დანაყოფი (საგამოცდო ქულის) | 0 <= გამოცდის ქულა <= 75 | გამოცდის ქულა < 0 | გამოცდის ქულა > 75 |
6. | მოსალოდნელი გამომავალი მნიშვნელობა | 'A' | 'შ.შ.' | 'შ.შ.' |
ცხრილი 2 - ტესტ ქეისები შემავალი მნიშვნელობისთვის - საგამოცდო ნაშრომი
ტესტ ქეისები, რომლებიც შეესაბამება საგამოცდო ნაშრომის შემავალი მნიშვნელობების დანაყოფებს მოცემულია ქვემოთ.
ტესტ ქეისი | 1 | 2 | 3 | |
---|---|---|---|---|
1. | შემავალი მნიშვნელობა (გამოცდის ქულა) | 40 | 40 | 40 |
2. | შემავალი მნიშვნელობა (ს.ნ.-ის ქულა) | 20 | -15 | 47 |
3. | სრული ქულა (გამოანგარიშებული) | 60 | 25 | 87 |
4. | ტესტირების დაფარვის ობიექტი | TCOVER2 | TCOVER5 | TCOVER6 |
5. | გატესტილი დანაყოფი (საგამოცდო ქულის) | 0 <= ს.ნ.-ის ქულა <= 25 | ს.ნ.-ის ქულა < 0 | ს.ნ.-ის ქულა > 25 |
6. | მოსალოდნელი გამომავალი მნიშვნელობა | 'B' | 'შ.შ.' | 'შ.შ.' |
ცხრილი 3 - ტესტ ქეისები არავალიდური შემავალი მნიშვნელობებისთვის - გამოცდის ქულა
ტესტ ქეისები, რომლებიც შეესაბამება შესაძლოა არავალიდურ შემავალ მნიშვნელობებს მოცემულია ქვემოთ.
ტესტ ქეისი | 1 | 2 | 3 | |
---|---|---|---|---|
1. | შემავალი მნიშვნელობა (გამოცდის ქულა) | 60.5 | Q | $ |
2. | შემავალი მნიშვნელობა (ს.ნ.-ის ქულა) | 15 | 15 | 15 |
3. | სრული ქულა (გამოანგარიშებული) | 75.5 | გამოუთვლელი | გამოუთვლელი |
4. | ტესტირების დაფარვის ობიექტი | TCOVER7 | TCOVER8 | TCOVER9 |
5. | გატესტილი დანაყოფი (საგამოცდო ქულის) | გამოცდის ქულა = შერეული რიცხვი | გამოცდის ქულა = ანბანური მნიშვნელობა | გამოცდის ქულა = სპეციალური სიმბოლო |
6. | მოსალოდნელი გამომავალი მნიშვნელობა | 'შ.შ.' | 'შ.შ.' | 'შ.შ.' |
ცხრილი 4 - ტესტ ქეისები არავალიდური შემავალი მნიშვნელობებისთვის - საკურსო ნამუშევრის ქულა
ტესტ ქეისები, რომლებიც შეესაბამება საგამოცდო ნაშრომის არავალიდური შემავალი მნიშვნელობების დანაყოფებს მოცემულია ქვემოთ.
ტესტ ქეისი | 10 | 11 | 12 | |
---|---|---|---|---|
1. | შემავალი მნიშვნელობა (გამოცდის ქულა) | 40 | 40 | 40 |
2. | შემავალი მნიშვნელობა (ს.ნ.-ის ქულა) | 20 .23 | G | @ |
3. | სრული ქულა (გამოანგარიშებული) | 60.23 | გამოუთვლელი | გამოუთვლელი |
4. | ტესტირების დაფარვის ობიექტი | TCOVER10 | TCOVER11 | TCOVER12 |
5. | გატესტილი დანაყოფი (საგამოცდო ქულის) | ს.ნ.-ის ქულა = შერეული რიცხვი | ს.ნ.-ის ქულა = ანბანური მნიშვნელობა | ს.ნ.-ის ქულა = სპეციალური მნიშვნელობა |
6. | მოსალოდნელი გამომავალი მნიშვნელობა | 'შ.შ.' | 'შ.შ.' | 'შ.შ.' |
ცხრილი 5 - ტესტ ქეისები ვალიდური გამომავალი მნიშვნელობებისთვის - სრული ქულა
ტესტ ქეისები, რომლებიც შეესაბამება სრული შეფასების ვალიდური მნიშვნელობების დანაყოფებს მოცემულია ქვემოთ.
ტესტ ქეისი | 13 | 14 | 15 | 16 | 17 | 18 | |
---|---|---|---|---|---|---|---|
1. | შემავალი მნიშვნელობა (გამოცდის ქულა) | 60 | 44 | 32 | 12 | 80 | -10 |
2. | შემავალი მნიშვნელობა (ს.ნ.-ის ქულა) | 20 | 22 | 13 | 5 | 60 | -10 |
3. | სრული ქულა (გამოანგარიშებული) | 80 | 66 | 45 | 17 | 140 | -20 |
4. | ტესტირების დაფარვის ობიექტი | TCOVER13 | TCOVER14 | TCOVER15 | TCOVER16 | TCOVER17 | TCOVER18 |
5. | გატესტილი დანაყოფი (საგამოცდო ქულის) | 70 <= სრული ქულა <= 100 | 50 <= სრული ქულა < 70 | 30 <= სრული ქულა < 50 | 0 <= სრული ქულა < 30 | სრული ქულა > 100 | სრული ქულა < 0 |
6. | მოსალოდნელი გამომავალი მნიშვნელობა | 'A' | 'B' | 'C' | 'D' | 'შ.შ.' | 'შ.შ.' |
ცხრილი 6 - ტესტ ქეისები არა ვალიდური გამომავალი მნიშვნელობისთვის - სრული ქულა
ტესტ ქეისები, რომლებიც შეესაბამება სრული შეფასების არავალიდურ გამომავალი მნიშვნელობებს დანაყოფებს მოცემული ქვემოთ.
ტესტ ქეისი | 19 | 20 | 21 | 22 | |
---|---|---|---|---|---|
1. | შემავალი მნიშვნელობა (გამოცდის ქულა) | 47.3 | 5 | 72 | Null |
2. | შემავალი მნიშვნელობა (ს.ნ.-ის ქულა) | @@@ | 5 | 23 | Null |
3. | სრული ქულა (გამოანგარიშებული) | - | 10 | 95 | - |
4. | ტესტირების დაფარვის ობიექტი | TCOVER19 | TCOVER20 | TCOVER21 | TCOVER22 |
5. | გატესტილი დანაყოფი (გამომავალი მნიშვნელობა) | 'შ.შ. | 'E' | 'A+' | 'Null' |
6. | გატესტილი დანაყოფი (საგამოცდო ქულის) | - | 0 <= სრული ქულა <= 15 | 90 <= სრული ქულა <= 100 | - |
7. | მოსალოდნელი გამომავალი მნიშვნელობა | 'შ.შ.' | 'D' | 'A' | 'შ.შ. |