Course: Advanced Testing

« Back
Course title Advanced Testing
Course code KIV/PTE
Organizational form of instruction Lecture + Tutorial
Level of course Master
Year of study not specified
Semester Winter
Number of ECTS credits 4
Language of instruction Czech
Status of course unspecified
Form of instruction Face-to-face
Work placements This is not an internship
Recommended optional programme components None
Lecturer(s)
  • Lipka Richard, Ing. Ph.D.
  • Herout Pavel, Doc. Ing. Ph.D.
Course content
1. Introduction, basic terminology, project and production risks, test environments 2. Existing standards and procedures for software quality assurance (ISO / IEC 25010: 2011, IEEE 1633-2016) 3. Visualization of test results 4. Design and evaluation of benchmarks and stress tests, stress tests, recovery tests, use of appropriate tools (JMeter) 5. Methods and methodologies of usability testing 6. BDD testing 7. REST API testing 8. Symbolic execution, analysis and debugging in a running program, program memory analysis (Valgrind) 9. Monitoring of running software, usable tools and their influence on the application 10. Model checking, formal methods and tools 11. Static methods for software verification, their properties and limitations. Programming conventions (MISRA-C, CERT-C) and possibilities of their verification 12. Testing in Agile 13. Invited lecture

Learning activities and teaching methods
  • Practical training (number of hours) - 26 hours per semester
  • Individual project (40) - 25 hours per semester
  • Contact hours - 26 hours per semester
  • Preparation for an examination (30-60) - 30 hours per semester
prerequisite
Knowledge
- has knowledge of the internal operation of programs (structure of program memory in C, basic operation of the stack, program flow control) - understands the operation of tools (eg PMD) for static verification of program quality
Skills
- programs in at least one extended high-level language (Java, Python, C ++) (knowledge comes from the previous Bc. study) - routinely uses unit testing - analyzes the tested domain, can prepare input data for testing - uses a logging system
Competences
N/A
N/A
learning outcomes
Knowledge
- Knowledge of FURPS + quality dimensions (functionality, usability, reliability, performance, supportability). - Knowledge of (automated) preparation of test data and test results (oracles). - Knowledge of typical problems that appear in complex IT systems and procedures to detect them - Knowledge of methods of software quality management, use of metrics and specialized tools. - Is aware of the existence of standards for software quality assurance (ISO / IEC 25010: 2011, IEEE 1633-2016) - Is aware of the procedures of SW process management leading to an increase in the quality of the created SW and knows the tools managing these processes
Skills
- Able to visualize complex test results for the entire development team - Can use BDD testing methodology and tools - Able to test REST API - Can design and perform performance tests correctly - Can use sophisticated static analysis tools - Can use tools for dynamic verification of software execution (eg Valgrind)
Competences
N/A
N/A
N/A
teaching methods
Knowledge
Lecture with visual aids
Lecture supplemented with a discussion
E-learning
Task-based study method
Textual studies
Group discussion
Self-study of literature
Individual study
Students' portfolio
Skills
Lecture
Lecture supplemented with a discussion
Practicum
E-learning
Task-based study method
Group discussion
Individual study
Students' portfolio
One-to-One tutorial
Competences
Lecture supplemented with a discussion
Task-based study method
Textual studies
Students' portfolio
assessment methods
Knowledge
Oral exam
Written exam
Seminar work
Skills
Practical exam
Skills demonstration during practicum
Continuous assessment
Project
Competences
Oral exam
Project
Recommended literature
  • Alpaev, G. Software Testing Automation Tips. APress, 2017. ISBN 1484231619.
  • Kshirasagar N. - Priyadarshi T. Software Testing and Quality Assurance: Theory and Practice. Wiley & Sons, 2011. ISBN 978-1-118-21163-2.
  • Mathur, Aditya P. Foundations of software testing : fundamental algorithms and techniques. Delhi : Pearson Education, 2008. ISBN 978-81-317-1660-1.


Study plans that include the course
Faculty Study plan (Version) Category of Branch/Specialization Recommended year of study Recommended semester