● 1. Discussion on Quality ○ About QCD ○ Work 1: Deriving points of view from where you stand ○ Quality Model discussion The Kano Model ○ Software quality characteristics ● Ⅱ. Discussion on Software Tests ○ Work 2: Myers triangle problem ○ A more academic discussion on software tests Agenda
● 1. Discussion on Quality ○ About QCD ○ Work 1: Deriving points of view from where you stand ○ Quality Model discussion The Kano Model ○ Software quality characteristics ● Ⅱ. Discussion on Software ○ Work 2: Myers triangle problem ○ A more academic discussion on software tests Agenda
● 1. Discussion on Quality ○ About QCD ○ Work 1: Deriving points of view from where you stand ○ Quality Model discussion The Kano Model ○ Software quality characteristics ● Ⅱ. Discussion on Software ○ Work 2: Myers triangle problem ○ A more academic discussion on software tests Agenda
Write the “product perspective” for each view point. Work 1: Deriving points of view from where you stand References: Learn the next step you must take for your current review - A walkthrough of conducting reviews Kenji Adachi http://www.slideshare.net/AdachiKenji/20150529-ja-sst15web A: Market and customer B: Product planning C: Design and development D: Test
“Product Perspective” Presentation: Deriving points of view from where you stand A: Market and customer B: Product planning C: Design and development D: Test
“Product Perspective” Presentation (just one example) Deriving points of view from where you stand A: Market and customer Do I want to use it ? Will it become popular? Physical appearance, status C: Design and development Can it use the latest technology, is it easy to use? Is it versatile? B: Product planning Will it sell? D: Test Can it be made easily, Can it be used without any issues?
When your viewpoint changes, even with the same product, different areas become important Goal of the work: Deriving points of view from where you stand
● 1. Discussion on Quality ○ About QCD ○ Work 1: Deriving points of view from where you stand ○ Quality Model discussion The Kano Model ○ Software quality characteristics ● Ⅱ. Discussion on Software ○ Work 2: Myers triangle problem ○ A more academic discussion on software tests Agenda
● 1. Discussion on Quality ○ About QCD ○ Work 1: Deriving points of view from where you stand ○ Quality Model discussion The Kano Model ○ Software quality characteristics ● Ⅱ. Discussion on Software ○ Work 2: Myers triangle problem ○ A more academic discussion on software tests Agenda
● 1. Discussion on Quality ○ About QCD ○ Work 1: Deriving points of view from where you stand ○ Quality Model discussion The Kano Model ● Software quality characteristics ● Ⅱ. Discussion on Software Tests ○ Work 2: Myers triangle problem ○ A more academic discussion on software tests Agenda
Glenford J. Myers, The Art of Software Testing Let’s write out a series of test cases needed to test the following program (in other words, a sufficient data set). Example: XX test case 1. This program reads 3 integers from a card. 2. These 3 values represent the lengths of the 3 sides of a triangle. 3. The program will print a message determining if the triangle is a scalene triangle, isosceles triangle, or equilateral triangle. Work 2: Myers triangle problem
Valid 1. Test case expressing a valid scalene triangle Example[A=3,B=4,C=5] 2. Test case expressing a valid equilateral triangle Example[A=1,B=1,C=1] 3. Test case expressing a valid isosceles triangle Example[A=2,B=2,C=3] 4. For a valid isosceles triangle, test case that expresses a combination of three types, including two equilateral triangles [A=B, B=C, C=A]
Example[A=3,B=3,C=4][A=3,B=4,C=3][A=4,B=3,C=3] Work 2 (answer): Myers triangle problem
Invalid❶ 5. Test case with a input field value of 0 Example [3 patterns in which A=0, B=3 , C=4, and one other is 0] [3 patterns where A=0, B=0, C=1, and 2 others are 0] 6. Test case with a negative number input field value [3 patterns where A=1, B=3, C=14 and 1 other is negative] [3 patterns where A=-1, B=-1, C=1 and 2 others are negative] [A=-1,B=-1,C=-1] Work 2 (answer): Myers triangle problem
Invalid 2 7. Test case [A+B=C] in which all of the fields are integers above 0, and the sum of the two fields is equal to the remaining field Example[A=1,B=2,C=3] 8. Test case with three combinations of [A+B=C] in field 7 Example[A=1,B=2,C=3][A=1,B=3,C=2][A=3,B=2,C=1] Work 2 (answer): Myers triangle problem
Invalid ❸ 9. Test case [A+Band the sum of the two fields is smaller than the remaining field Example[A=1,B=2,C=4] 10. Test case with three combinations of [A+Bfield 9 Example[A=1,B=2,C=4],[A=1,B=4,C=2], [A=4,B=2,C=1] Work 2 (answer): Myers triangle problem
Invalid ❹ 11. Test case [A=B=C=0] in which all fields are 0 Example[A=0,B=0,C=0] 12. Test case in which values have been inputted that are not half-width digit integers Example [decimal point, control code, half-width/full-width space, half-width/full with capital/lower-case letters, half-width/full-width kana, full-width digits, kana, kanji, etc.] 13. Test case in which there are less than 3 input values Sample [3 patterns in which A=null,B=3,C=4, and one other is blank] [3 patterns in which A=null,B=null,C=1, other other two are blank] [A=null,B=null,C=null] Work 2 (answer): Myers triangle problem http://blog.livedoor.jp/hime78/archives/50980099.html
Valid (display) 14. Does the actual display match the expected display results, based on the values entered? Work 2 (answer): Myers triangle problem http://blog.livedoor.jp/hime78/archives/50980099.html
● I thought of doing the Myers triangle problem at a study session, and it ended up being much harder than I expected. It was a great learning experience. ○ http://togetter.com/li/843768 ● Number of required tests cases ○ http://a-lifelong-tester.cocolog-nifty.com/blog/2011/06/post- caee.html ○ Various perspectives on triangle problem tests Side note: Myers Triangle Problem
● 1. Discussion on Quality ○ About QCD ○ Work 1: Deriving points of view from where you stand ○ Quality Model discussion The Kano Model ○ Software quality characteristics ● Ⅱ. Discussion on Software Tests ○ Work 2: Myers triangle problem ○ A more academic discussion on software tests Agenda
● A more academic discussion on software tests ○ 7 test principles ○ Test techniques ○ Test levels ○ Test types ○ 4 test quadrants ○ Test automation pyramid A more academic discussion on software tests |Agenda ISTQB glossary
● A more academic discussion on software tests ○ 7 test principles ○ Test techniques ○ Test levels ○ Test types ○ 4 test quadrants ○ Test automation pyramid A more academic discussion on software tests |Agenda
1. Tests will tell you if there are any defects, but cannot confirm that there are not any defects 2. Exhaustive testing is impossible 3. Test early to reduce time and cost 4. Defect clustering 5. Be aware of the pesticide paradox 6. Testing is context dependent 7. The “absence of errors” trap 7 test principles
2. Exhaustive testing is impossible 1×1 2 paths 2×2 12 lines 3×3 184 lines 4×4 8512 lines 5×5 1,262,516 paths 6×6 575,780,564 paths The Art of 10^64 -Understanding Vastness https://www.youtube.com/watch?v=Q4gTV4r0zRs S G How many paths from the start to goal of this square? Can take a roundabout path, but cannot cross the same path twice
● A more academic discussion on software tests ○ 7 test principles ○ Test techniques ○ Test levels ○ Test types ○ 4 test quadrants ○ Test automation pyramid A more academic discussion on software tests |Agenda
● Equivalence partitioning ● Boundary value analysis ● Decision table testing ● State transition testing ● Use case testing ■ Image https://thinkit.co.jp/images/article/40/2/4021_zoom.gif Specification-based/black box test method | Test methods
Apple selling price 1. 1-4 apples 200 yen each 2. 5-9 apples 170 yen each 3. 10+ apples 160 yen each Equivalence partitioning, boundary value analysis 0 1 4 5 9 10 Prices of 200, 170, 160 yen Software Test Technique Drill by Koichi Akiyama
If the buyer for a certain job is an educator, they will get 10% off selected items. Decision table test 1 2 3 condit ions Is the buyer an educator N y y Is the purchased item eligible - N y Action 10% discount N N y Judgment on discount for the job
Use Case Test https://thinkit.co.jp/images/article/40/2/4021_zoom.gif Business Trip Application System Applicant Approver Accounting Team Register business trip application Submit business trip application Approve business trip application Reject business trip application
Send back business trip application
Check business trip application Sample use case diagram
● A more academic discussion on software tests ○ 7 test principles ○ Test techniques ○ Test levels ○ Test types ○ 4 test quadrants ○ Test automation pyramid A more academic discussion on software tests |Agenda
● A more academic discussion on software tests ○ 7 test principles ○ Test techniques ○ Test levels ○ Test types ○ 4 test quadrants ○ Test automation pyramid A more academic discussion on software tests |Agenda
● Feature test ■ Test for “what are you doing” ● Non-feature test ■ Test for ”how you will make this action” ● Structure test ■ Test for “how much of the structure have you covered” ● Re-test, regression test ■ Test for running a tested program many times Test Type
● A more academic discussion on software tests ○ 7 test principles ○ Test techniques ○ Test levels ○ Test types ○ 4 test quadrants ○ Test automation pyramid A more academic discussion on software tests |Agenda
● A more academic discussion on software tests ○ 7 test principles ○ Test techniques ○ Test levels ○ Test types ○ 4 test quadrants ○ Test automation pyramid A more academic discussion on software tests |Agenda
1. Do tests from a variety of standpoints 2. Even for a program that seems simple, there are many different tests cases 3. Be aware of QCD - Quality, Cost, and Deliver/Time
Don’t think about just good or bad, but propose new ideas and make improvements in order to improve quality Summary
◆ The Art of Software Testing ◆ JSTQB Foundation Level Syllabus Version 2018.J01 ◆ Software Textbook JSTQB Foundation Version 4 ◆ Lessons Learned in Software Testing ◆ Lessons Learned in Software Testing: A Context-Driven Approach ◆ ソフトウェア品質知識体系ガイド 第2版 –SQuBOK Guide V2- (日本語版) ◆ ソフトウェアテスト技法ドリル-テスト設計の考え方と実際 (日本語版) Additional References