Information
Unit | FACULTY OF ENGINEERING |
COMPUTER ENGINEERING PR. (ENGLISH) | |
Code | CEN315 |
Name | Introduction to Test Engineering |
Term | 2025-2026 Academic Year |
Semester | 5. Semester |
Duration (T+A) | 3-0 (T-A) (17 Week) |
ECTS | 6 ECTS |
National Credit | 3 National Credit |
Teaching Language | Türkçe |
Level | Belirsiz |
Type | Normal |
Label | E Elective |
Mode of study | Yüz Yüze Öğretim |
Catalog Information Coordinator | Öğr. Gör.Dr. Yunus Emre ÇOGURCU |
Course Instructor |
The current term course schedule has not been prepared yet.
|
Course Goal / Objective
The aim of this course is to provide third year Computer Engineering students with holistic test engineering skills to ensure software quality; In this direction, to teach students the theoretical foundations of test processes, to gain competence in designing and automating test cases at unit-integration-system levels, to create a test culture focused on continuous integration and DevOps by working with industry standard tools such as JUnit, Selenium, Postman, JMeter, OWASP ZAP and Jenkins, to measure and evaluate performance and safety requirements, to systematically report and analyse errors, and to develop professional communication skills by translating their findings into technical documents and presentations in English.
Course Content
This course provides a comprehensive introduction to software test engineering: it starts with the place of testing in the software development lifecycle, the test pyramid and basic concepts; covers unit testing (JUnit) and test-driven development (TDD) with techniques such as equivalent partitioning and boundary-value analysis; and introduces advanced unit testing skills with mock objects (Mockito) and code coverage measurement. Verification of interactions between modules using integration testing and API testing (Postman/Newman) is then taught; system testing and UI automation (Selenium) and test documentation are emphasised. Test management, defect lifecycle, Jenkins-based Continuous Integration processes and ‘shift-left’ test culture in Agile/DevOps are covered. Performance testing (Apache JMeter) and load, stress and endurance test cases, security testing (OWASP ZAP, basic static analysis) and detection of OWASP Top 10 vulnerabilities are put into practice. The course combines with DevOps-oriented testing techniques such as consistent test environments with Docker and contract testing in a microservice context, and is complemented by project-based exercises, interim assessments, final presentations and new trends (AI-assisted testing, modern automation frameworks, future of testing in CI/CD) throughout the semester.
Course Precondition
none
Resources
1-)Introduction to Software Testing – Paul Ammann & Jeff Offutt, 2nd ed. 2-)MIT Lecture Notes Testing and Coverage - https://ocw.mit.edu/courses/6-005-elements-of-software-construction-fall-2008/resources/mit6_005f08_lec09/ 3-)CMU – 17-313 Foundations of Software Engineering - https://www.cs.cmu.edu/~ckaestne/17313/2018/ 4-)Mathur, A. P. (2013). Foundations of software testing, 2/e. Pearson. 5-)Kuhn, D. R., Kacker, R. N., & Lei, Y. (2013). Introduction to combinatorial testing. CRC press.
Notes
Example projects on GitHub.
Course Learning Outcomes
Order | Course Learning Outcomes |
---|---|
LO01 | Ability to identify, formulate and solve complex engineering problems; ability to select and apply appropriate analysis and modelling methods for this purpose. |
LO02 | Ability to work effectively in disciplinary and multidisciplinary teams; ability to work individually. |
LO03 | Ability to select and use modern techniques and tools necessary for the analysis and solution of complex problems encountered in engineering practice; ability to use information technologies effectively. |
LO04 | Knowledge about behaving in accordance with ethical principles, professional and ethical responsibility and standards used in engineering practices. |
Relation with Program Learning Outcome
Order | Type | Program Learning Outcomes | Level |
---|---|---|---|
PLO01 | Bilgi - Kuramsal, Olgusal | Adequate knowledge of mathematics, science and related engineering disciplines; ability to use theoretical and applied knowledge in these fields in solving complex engineering problems. | |
PLO02 | Bilgi - Kuramsal, Olgusal | Ability to identify, formulate and solve complex engineering problems; ability to select and apply appropriate analysis and modeling methods for this purpose. | 4 |
PLO03 | Bilgi - Kuramsal, Olgusal | Ability to design a complex system, process, device or product to meet specific requirements under realistic constraints and conditions; ability to apply modern design methods for this purpose. | |
PLO04 | Bilgi - Kuramsal, Olgusal | Ability to select and use modern techniques and tools necessary for the analysis and solution of complex problems encountered in engineering practice; ability to use information technologies effectively. | 4 |
PLO05 | Bilgi - Kuramsal, Olgusal | Ability to design and conduct experiments, collect data, analyze and interpret results to investigate complex engineering problems or discipline-specific research topics. | |
PLO06 | Bilgi - Kuramsal, Olgusal | Ability to work effectively in interdisciplinary and multidisciplinary teams; individual working skills. | 3 |
PLO07 | Bilgi - Kuramsal, Olgusal | Ability to communicate effectively verbally and in writing; knowledge of at least one foreign language; ability to write effective reports and understand written reports, prepare design and production reports, make effective presentations, and give and receive clear and understandable instructions. | |
PLO08 | Bilgi - Kuramsal, Olgusal | Awareness of the necessity of lifelong learning; ability to access information, follow developments in science and technology, and constantly renew oneself. | |
PLO09 | Bilgi - Kuramsal, Olgusal | Knowledge of ethical principles, professional and ethical responsibility, and standards used in engineering practice. | 4 |
PLO10 | Bilgi - Kuramsal, Olgusal | Knowledge of business practices such as project management, risk management and change management; awareness of entrepreneurship and innovation; knowledge of sustainable development. | |
PLO11 | Bilgi - Kuramsal, Olgusal | Knowledge of the effects of engineering practices on health, environment and safety in universal and social dimensions and the problems of the age reflected in the field of engineering; awareness of the legal consequences of engineering solutions. |
Week Plan
Week | Topic | Preparation | Methods |
---|---|---|---|
1 | Role of Test Engineering & Quality Fundamentals | Reading lecture notes | Öğretim Yöntemleri: Anlatım, Soru-Cevap |
2 | Unit Testing Basics | Reading lecture notes | Öğretim Yöntemleri: Anlatım, Soru-Cevap |
3 | Advanced Unit Testing (Test Driven Development & Mocking) | Reading lecture notes | Öğretim Yöntemleri: Anlatım, Soru-Cevap |
4 | Coverage Metrics & Mutation Testing | Reading lecture notes | Öğretim Yöntemleri: Anlatım, Soru-Cevap |
5 | Integration & API Testing (Postman/Newman) | Reading lecture notes | Öğretim Yöntemleri: Anlatım, Soru-Cevap |
6 | Advanced Test Design — Graph, Data-flow, Decision Tables | Reading lecture notes | Öğretim Yöntemleri: Anlatım, Soru-Cevap |
7 | Model & Property-Based Testing (QuickCheck/JQwik) | Reading lecture notes | Öğretim Yöntemleri: Anlatım, Soru-Cevap |
8 | Mid-Term Exam | Reading lecture notes | Ölçme Yöntemleri: Ödev |
9 | Performance Testing & Statistical Reliability Models | Reading lecture notes | Öğretim Yöntemleri: Anlatım, Soru-Cevap |
10 | Pairwise / Combinatorial Testing (ACTS, PICT) | Reading lecture notes | Öğretim Yöntemleri: Anlatım, Soru-Cevap |
11 | Security Testing & Threat Modeling (OWASP ZAP) | Reading lecture notes | Öğretim Yöntemleri: Anlatım, Soru-Cevap |
12 | Chaos Engineering & Resilience Testing | Reading lecture notes | Öğretim Yöntemleri: Anlatım, Soru-Cevap |
13 | DevOps Testing Practices (CI/CD-Docker) | Reading lecture notes | Öğretim Yöntemleri: Anlatım, Soru-Cevap |
14 | Formal Verification Bridge | Reading lecture notes | Öğretim Yöntemleri: Anlatım, Soru-Cevap |
15 | Future Trends | Reading lecture notes | Öğretim Yöntemleri: Anlatım, Soru-Cevap |
16 | Term Exams | Reading lecture notes | Ölçme Yöntemleri: Ödev, Yazılı Sınav |
17 | Term Exams | Reading lecture notes | Ölçme Yöntemleri: Ödev, Yazılı Sınav |
Student Workload - ECTS
Works | Number | Time (Hour) | Workload (Hour) |
---|---|---|---|
Course Related Works | |||
Class Time (Exam weeks are excluded) | 14 | 3 | 42 |
Out of Class Study (Preliminary Work, Practice) | 14 | 5 | 70 |
Assesment Related Works | |||
Homeworks, Projects, Others | 1 | 10 | 10 |
Mid-term Exams (Written, Oral, etc.) | 1 | 10 | 10 |
Final Exam | 1 | 30 | 30 |
Total Workload (Hour) | 162 | ||
Total Workload / 25 (h) | 6,48 | ||
ECTS | 6 ECTS |