Course code InfTB007

Credit points 6

Software Testing Methods

Total Hours in Course120

Number of hours for lectures16

Number of hours for seminars and practical classes48

Number of hours for laboratory classes0

Independent study hours98

Date of course confirmation24.01.2024

Responsible UnitInstitute of Computer Systems and Data Science

Course developer

author Datoru sistēmu un datu zinātnes institūts

Tatjana Rubina

Dr. sc. ing.

Prior knowledge

DatZ2057, Software Engineering Methods I

Replaced course

InfT3039 [GINT3039] Software Testing Methods

Course abstract

The purpose of the study course is to introduce students to software testing, current industry testing standards, and good software development practices. The course examines the basic concepts of software testing and the testing process, defines testing objectives and test development methods, as well as examines the methods of test case preparation used in practice. In practical work, students learn the main stages of testing, preparation of test cases, test documentation and test reports, as well as work with one of the most popular software development management and defect tracking tools.

Learning outcomes and their assessment

As a result of the study course students:
•know about significance of software testing process in software development projects with different life cycle models, and tasks of testing process and their potential implementation – theory test;
•have skills to organize different kind of testing activities and testing documentation, and acquire practical experience in test implementation – practical and individual work; •working in teams or independently, are able to use definite forms of testing and analysing of the test results, to develop testing documentation, and to organize activities of information interchange, as well as assure the others and argue their own point of view - practical and individual work.

Course Content(Calendar)

Lectures:
1 Introduction. Basic concepts of software testing. Testing process. Performers of the testing process. Testing types. Testing standards. (1h)
2 Testing documentation. Software test case documentation. Test procedure. Test logs. Testing plan. Testing report. (2h)
3 Testing approaches. White Box testing approach. Test case development techniques. Basic path testing. Coverage analysis. (2h)
5 Black Box testing approach. Test case development techniques. Equivalence partitioning. Boundary values analysis. Decision tables. State transition testing. (2h)
7 Software development management and defect tracking tools. (1h)
8 Error, failure, defect, problem. Importance, priority of defect. Defect reporting. (2h)
9 Testing types and methods. Functional and non-functional testing. Non-functional testing methods. (1h)
10 Software usability. Software usability testing. (1h)
11 Automate testing. Test automation. (2h)
12 Software testing levels (2h).

Practical works:
1 Software testing methods, terminology, miths, standarts. (3h)
2 Tescase design. (3h)
3 White Box testing approach. Test case development techniques. Basic path testing. (3h)
4 White Box testing approach. Test case development techniques. Coverage analysis. (3h)
5 Black Box Testing approach. Test case development techniques. Equivalence partitioning. Boundary values analysis. (3h)
6 Black Box Testing approach. Test case development techniques. Decision tables. State transition testing. (3h)
7 Testing plan. (3h)
8 Software development management and defect tracking tools. (4h)
9 Software Usability Testing. Test reports.(8h)
10 Test automation. (15h)

Requirements for awarding credit points

All practical works must be completed. The practical work assigned by the teaching staff must be defended.

Description of the organization and tasks of students’ independent work

Students must complete 10 practical assignments independently. Within a week of assignment, students should analyse the assignment and start executing it. The report of partially completed practical work must be uploaded in e-studies at the end of the lesson. The practical work must be completed and submitted to e-learning system within two weeks of its assignment.

Criteria for Evaluating Learning Outcomes

Exam.
The final assessment of the study course consists of:
•total assessment of practical work – max 8 points;
•theory test – max 2 points.

Compulsory reading

1. Spillner A., Linz T. Software Testing Foundations. 5th Edition: A Study Guide for the Certified Tester Exam. 2021
2. International Software Testing Qualifications Board. Sertified tester Foundation level syllabus. Version 2018 v.3.1 [tiešsaiste]. Pieejams: http://www.istqb.org/
3. ANSI/IEEE Std 1008(R1993). IEEE Standard for Software Unit Testing (Standartizācijas biroja lasītava)
4. ANSI/IEEE Std 829-1998. IEEE Standard for Software Test Documentation (Standartizācijas biroja lasītava)
5. BS 7925-2. Standard for Software Component Testing [tiešsaiste] Pieejams: http://www.testingstandards. co.uk/Component%20Testing.pdf
6. IEEE Std-J-016-1995. Trial Use Standard. Standard for Information Technology. Software Life Cycle Processes Software Development. Acquirer-Supplier Agreement. (Standartizācijas biroja lasītava)
7 .Whittaker J.A. Exploratory software testing: tips, tricks, tours, and techniques to guide manual testers.1st ed., 2010.
8. Barnum C.M. Usability Testing Essentials: Ready, Set ...Test!: Ready, Set...Test! 2nd edition, 2020.

Further reading

1. Winters T., Manshreck T., Wringht H. Software engineering at Google. 2020.
2. Beaver K. Hacking for dummies. 6th ed., 2018.
3. Singh Y. Software Testing. Cambridge: Cambridge University Press. 2011. E-grāmata LLU tīklā datubāzē ”EBSCO e-book Academic Collection”. Pieejams: http://ezproxy.llu.lv:2103/login.aspx?direct=true&db=e000xww&AN=465756&site=ehost-live
4. Yorkston K. Performance testing. 2021

Notes

Academic bachelor's study program "Computer management and computer science".