SlideShare a Scribd company logo
1 of 26
Download to read offline
WISSEN
TECHNIK
LEIDENSCHAFT
Automated system testing for
a learning management
system
31.10.2019
Lukas Krisper
Agenda
• Motivation
• Test Automation
• Test Cases for an LMS
• Test Data for an LMS
• Implementation and Infrastructure
• Conclusion
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
2
Agenda
• Motivation
• Test Automation
• Test Cases for an LMS
• Test Data for an LMS
• Implementation and Infrastructure
• Conclusion
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
3
A shift towards Agile Software Development
• Over the last two decades …
• Emerge of agile methodologies in software development
• Acceleration of software delivery and feedback cycles
• Automation of manual processes
• Quality Assurance?
• Only 20% of IT organisations have automated more than half of their
test cases (State of Testing Report, 2018)
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
4
Motivation
New Releases in Summer 2019
• TeachCenter 3.0
• Learning Management System (LMS)
• Migration of whole LMS to new Moodle Version (3.5)
• New GUI for all users
• Set of Unit-Tests existed
• Sparely documented manual tests
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
5
Motivation
Research Questions
• (RQ1) How can the existing core functionality of a large software system
be assured automatically in new versions of the system?
• (RQ2) Which test cases and test suites need to be designed to test a
learning management system effectively?
• (RQ3) Which test data is needed to test a learning management system
and how can the data be provided to automated test cases?
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
6
Motivation
Agenda
• Motivation
• Test Automation
• Test Cases for an LMS
• Test Data for an LMS
• Implementation and Infrastructure
• Conclusion
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
7
Focus of Automation Activities
• Software Quality Characteristic*: Functional Suitability
• Testing Level: System Testing
• Testing Type: Regression Tests
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
8
Test Automation
*According to ISO-25010
Software Quality Characteristic: Functional Suitability
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
9
Test Automation
• Does the software product do what it is supposed to do?
• Functional testing as basis of all testing activities
• A software product that does not provide functional suitability is rather
worthless
• E.g. calculator that calculates very fast
and has a nice UI, but the calculations are wrong
2 + 2 = 5
Testing Level: System Testing
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
10
Test Automation
• Software product is considered in its entirety
• Test environment has close resemblance to production environment
• Tests conducted from user’s perspective
• Typically using the systems GUI for interaction
• Automated system tests as second line of defense
• If tests fail at this level → malfunctioning system + wrong or missing
test at lower testing level
Testing Type: Regression Tests
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
11
Test Automation
• Is already existing functionality affected by the changes applied to a software?
• The first type of tests to be considered when automating tests
• Quickly run a set of tests after applying changes:
• Extensions to a feature
• Bug fixes
• Refactorings
• …
• Especially useful when changes happen late in the project and time for
manual testing is short
Agenda
• Motivation
• Test Automation
• Test Cases for an LMS
• Test Data for an LMS
• Implementation and Infrastructure
• Conclusion
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
12
What Test Cases should be automated?
• Important consideration!
• Interview with first level support of TeachCenter 2.0
• Research in literature on usages of LMS
• Results:
• Knowledge on most important use cases for students and teachers
E.g. reading the course’s contents, communicating with other
participants, submitting material to the course, …
• > 30 test cases combined to different test suites
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
13
Test Cases for a LMS
Agenda
• Motivation
• Test Automation
• Test Cases for an LMS
• Test Data for an LMS
• Implementation and Infrastructure
• Conclusion
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
14
Real Data vs Synthetic Data
• Real Data
• Transfer data from production environment to test environment
• Data has to be edited (according to laws on data protection/privacy*)
• Important: Keep consistency in data set!
• Synthetic Data
• Newly created data for the purpose of testing
• Always GDPR compliant
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
15
Test Data for a LMS
* e.g. General Data Protection Regulation (GDPR)
Data for a LMS
• A LMS typically contains data on
• Courses (course descriptions, learning material, …)
• Data on people involved in the courses (names, email-addresses, …)
• Data from interaction of people with the courses (submissions, …)
• TeachCenter 3.0 is tested with both synthetic and real data
• Data used for automated tests is labeled as such
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
16
Test Data for a LMS
Agenda
• Motivation
• Test Automation
• Test Cases for an LMS
• Test Data for an LMS
• Implementation and Infrastructure
• Conclusion
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
17
Overview on Infrastructure
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
18
Implementation and Infrastructure
Test Suite 1
Test Case 1
Test Case n
Test Case 2
…
Test Suite 1
Test Case 1
Test Case n
Test Case 2
…
Overview on Implementation
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
19
Implementation and Infrastructure
Test Suite 1
Test Case 1
Test Case n
Test Case 2
…
Test Data
Manager
Test Driver
Utility
e.g. initialise headless Chrome
browser with cleared cache
e.g. get PDF files for
submissions, references to
test data stored in JSON
files, …
Page Object 1Page Object 1Page Object 1
TestNG
Page Object 1Page Object 1
Helper Classes
e.g. taking screenshots on errors
See following slides
PageObject Design Pattern
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
20
Implementation and Infrastructure
• Components of a website are modelled into
reusable objects → “Page Objects”
• Page Objects offer functionality to interact with
website (click links, enter input fields, …)
• Tests use Page Objects to interact with website
(perform action → assert result of action)
Identification of Objects in UI
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
21
Implementation and Infrastructure
• Tests should be executable regardless …
• screen resolution
• window sizes
• language settings
• Identification of objects using stable features (IDs or XPath expressions)
DOM Element <button type= "button" id= "btn1" data-role= "next "> Next </button >
ID btn1
XPath expression //button[@data-role=’next’]
Agenda
• Motivation
• Test Automation
• Test Cases for an LMS
• Test Data for an LMS
• Implementation and Infrastructure
• Conclusion
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
22
(RQ1) How can the existing core functionality of a large software
system be assured automatically in new versions of the system?
• Regression Tests for „Functional Suitabilty“
• System Testing Level
• Large software system = many integrated components that interact
with each other → “high” testing level to ensure stability and detect
side effects
• Continuous Integration Environment (Automation Server)
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
23
Conclusion
(RQ2) Which test cases and test suites need to be designed to test
a learning management system effectively?
• Identification of use cases
• Interview with 1st level support + literature research
• Prioritisation of use cases
• Implementation of test cases based on use case
• Execution of suites of test cases according to prioritisation of use cases
• Multiple times a day ~ once a week
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
24
Conclusion
(RQ3) Which test data is needed to test a learning management
system and how can the data be provided to automated test cases?
• Synthetic and real test data
• 1 configured course with various activities and resources
• 1 student‘s account (enrolled to course)
• 1 teacher‘s account (enrolled to course)
• 1 PDF file
• Test data is persisted on test system (references in JSON-files) …
• Or provided to the test cases on demand
• Separation of test data and automated test cases
• No hardcoded test data
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
25
Conclusion
Thank you for your attention!
Lukas Krisper, 31.10.2019
Automated system testing for a learning management system
26
Conclusion

More Related Content

What's hot

Statistike treguesit e korelacionit ardiana gashi
Statistike treguesit e korelacionit   ardiana gashiStatistike treguesit e korelacionit   ardiana gashi
Statistike treguesit e korelacionit ardiana gashiMenaxherat
 
E Drejta e Detyrimeve dhe e Kontratave
E  Drejta e Detyrimeve dhe e KontrataveE  Drejta e Detyrimeve dhe e Kontratave
E Drejta e Detyrimeve dhe e KontrataveRefik Mustafa
 
Mid'hat shamiq si shkruhet vepra shkencore
Mid'hat shamiq si shkruhet vepra shkencoreMid'hat shamiq si shkruhet vepra shkencore
Mid'hat shamiq si shkruhet vepra shkencoreLibra Islame
 
Vlera Kufitare - Limiti
Vlera Kufitare - LimitiVlera Kufitare - Limiti
Vlera Kufitare - LimitiTonit Biba
 
Analiza e thjeshte e regresionit
Analiza e thjeshte e regresionitAnaliza e thjeshte e regresionit
Analiza e thjeshte e regresionitMenaxherat
 
Mostra kerkimore
Mostra kerkimoreMostra kerkimore
Mostra kerkimorestudent
 
Econ452 Learning Unit 11
Econ452 Learning Unit 11Econ452 Learning Unit 11
Econ452 Learning Unit 11sakanor
 
Kontabiliteti i Tatimeve
Kontabiliteti i TatimeveKontabiliteti i Tatimeve
Kontabiliteti i TatimeveMenaxherat
 
Njohurite elementare per kuptimin e ekonomise
Njohurite elementare per kuptimin e ekonomiseNjohurite elementare per kuptimin e ekonomise
Njohurite elementare per kuptimin e ekonomiseMenaxherat
 
Shkrimi akademik
Shkrimi akademikShkrimi akademik
Shkrimi akademikeduardii
 
Tatvariin erunhii huuli
Tatvariin erunhii huuliTatvariin erunhii huuli
Tatvariin erunhii huuliBatdorj Tuvaan
 

What's hot (13)

Statistike treguesit e korelacionit ardiana gashi
Statistike treguesit e korelacionit   ardiana gashiStatistike treguesit e korelacionit   ardiana gashi
Statistike treguesit e korelacionit ardiana gashi
 
E Drejta e Detyrimeve dhe e Kontratave
E  Drejta e Detyrimeve dhe e KontrataveE  Drejta e Detyrimeve dhe e Kontratave
E Drejta e Detyrimeve dhe e Kontratave
 
Mid'hat shamiq si shkruhet vepra shkencore
Mid'hat shamiq si shkruhet vepra shkencoreMid'hat shamiq si shkruhet vepra shkencore
Mid'hat shamiq si shkruhet vepra shkencore
 
Vlera Kufitare - Limiti
Vlera Kufitare - LimitiVlera Kufitare - Limiti
Vlera Kufitare - Limiti
 
Microeconomics: Production Theory
Microeconomics: Production TheoryMicroeconomics: Production Theory
Microeconomics: Production Theory
 
Analiza e thjeshte e regresionit
Analiza e thjeshte e regresionitAnaliza e thjeshte e regresionit
Analiza e thjeshte e regresionit
 
Mostra kerkimore
Mostra kerkimoreMostra kerkimore
Mostra kerkimore
 
Econ452 Learning Unit 11
Econ452 Learning Unit 11Econ452 Learning Unit 11
Econ452 Learning Unit 11
 
Kontabiliteti i Tatimeve
Kontabiliteti i TatimeveKontabiliteti i Tatimeve
Kontabiliteti i Tatimeve
 
Njohurite elementare per kuptimin e ekonomise
Njohurite elementare per kuptimin e ekonomiseNjohurite elementare per kuptimin e ekonomise
Njohurite elementare per kuptimin e ekonomise
 
Shkrimi akademik
Shkrimi akademikShkrimi akademik
Shkrimi akademik
 
Tatvariin erunhii huuli
Tatvariin erunhii huuliTatvariin erunhii huuli
Tatvariin erunhii huuli
 
Audit Quality
Audit QualityAudit Quality
Audit Quality
 

Similar to Automated system testing for a learning management system

Computer Based Assessment.pptx
Computer Based Assessment.pptxComputer Based Assessment.pptx
Computer Based Assessment.pptxsalah327743
 
Quality Assurance in Modern Software Development
Quality Assurance in Modern Software DevelopmentQuality Assurance in Modern Software Development
Quality Assurance in Modern Software DevelopmentZahra Sadeghi
 
Project Management for Information System Development
Project Management for Information System DevelopmentProject Management for Information System Development
Project Management for Information System DevelopmentNabilaNuzhat
 
Software Development Methodologies
Software Development MethodologiesSoftware Development Methodologies
Software Development MethodologiesNicholas Davis
 
Development of admission management system
Development of admission management systemDevelopment of admission management system
Development of admission management systemAlokDatta76
 
OOAD - System Analysis and Design
OOAD - System Analysis and Design OOAD - System Analysis and Design
OOAD - System Analysis and Design Murugeswari Ravi
 
Usability evaluation methods (part 2) and performance metrics
Usability evaluation methods (part 2) and performance metricsUsability evaluation methods (part 2) and performance metrics
Usability evaluation methods (part 2) and performance metricsAndres Baravalle
 
A practical guide for using Statistical Tests to assess Randomized Algorithms...
A practical guide for using Statistical Tests to assess Randomized Algorithms...A practical guide for using Statistical Tests to assess Randomized Algorithms...
A practical guide for using Statistical Tests to assess Randomized Algorithms...Lionel Briand
 
manajemen komputer dan sistem informasi.
manajemen komputer dan sistem informasi.manajemen komputer dan sistem informasi.
manajemen komputer dan sistem informasi.HermanTusiadi
 
Structured NERC CIP Process Improvement Using Six Sigma
Structured NERC CIP Process Improvement Using Six SigmaStructured NERC CIP Process Improvement Using Six Sigma
Structured NERC CIP Process Improvement Using Six SigmaEnergySec
 
Governance Strategies for Office 365
Governance Strategies for Office 365Governance Strategies for Office 365
Governance Strategies for Office 365Montrium
 
Software Testing - Introduction
Software Testing - IntroductionSoftware Testing - Introduction
Software Testing - IntroductionAjeng Savitri
 
Pressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metricsPressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metricsSeema Kamble
 
1 sad-01-introduction-june2015-rev
1 sad-01-introduction-june2015-rev1 sad-01-introduction-june2015-rev
1 sad-01-introduction-june2015-revFajar Baskoro
 
7 Tips from Siemens Energy for Success with Automation
7 Tips from Siemens Energy for Success with Automation7 Tips from Siemens Energy for Success with Automation
7 Tips from Siemens Energy for Success with AutomationWorksoft
 
ASMUG February 2015 Knowledge Event
ASMUG February 2015 Knowledge EventASMUG February 2015 Knowledge Event
ASMUG February 2015 Knowledge Eventjmustac
 
Lecture 01 Software Process Maturity.pptx
Lecture 01 Software Process Maturity.pptxLecture 01 Software Process Maturity.pptx
Lecture 01 Software Process Maturity.pptxGetahuntigistu5
 

Similar to Automated system testing for a learning management system (20)

Computer Based Assessment.pptx
Computer Based Assessment.pptxComputer Based Assessment.pptx
Computer Based Assessment.pptx
 
Quality Assurance in Modern Software Development
Quality Assurance in Modern Software DevelopmentQuality Assurance in Modern Software Development
Quality Assurance in Modern Software Development
 
Project Management for Information System Development
Project Management for Information System DevelopmentProject Management for Information System Development
Project Management for Information System Development
 
Building information systems
Building information systemsBuilding information systems
Building information systems
 
Software Development Methodologies
Software Development MethodologiesSoftware Development Methodologies
Software Development Methodologies
 
SDLC 21.11.2022.pdf
SDLC 21.11.2022.pdfSDLC 21.11.2022.pdf
SDLC 21.11.2022.pdf
 
Development of admission management system
Development of admission management systemDevelopment of admission management system
Development of admission management system
 
OOAD - System Analysis and Design
OOAD - System Analysis and Design OOAD - System Analysis and Design
OOAD - System Analysis and Design
 
Usability evaluation methods (part 2) and performance metrics
Usability evaluation methods (part 2) and performance metricsUsability evaluation methods (part 2) and performance metrics
Usability evaluation methods (part 2) and performance metrics
 
A practical guide for using Statistical Tests to assess Randomized Algorithms...
A practical guide for using Statistical Tests to assess Randomized Algorithms...A practical guide for using Statistical Tests to assess Randomized Algorithms...
A practical guide for using Statistical Tests to assess Randomized Algorithms...
 
manajemen komputer dan sistem informasi.
manajemen komputer dan sistem informasi.manajemen komputer dan sistem informasi.
manajemen komputer dan sistem informasi.
 
Structured NERC CIP Process Improvement Using Six Sigma
Structured NERC CIP Process Improvement Using Six SigmaStructured NERC CIP Process Improvement Using Six Sigma
Structured NERC CIP Process Improvement Using Six Sigma
 
Governance Strategies for Office 365
Governance Strategies for Office 365Governance Strategies for Office 365
Governance Strategies for Office 365
 
Software Testing - Introduction
Software Testing - IntroductionSoftware Testing - Introduction
Software Testing - Introduction
 
Pressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metricsPressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metrics
 
1 sad-01-introduction-june2015-rev
1 sad-01-introduction-june2015-rev1 sad-01-introduction-june2015-rev
1 sad-01-introduction-june2015-rev
 
7 Tips from Siemens Energy for Success with Automation
7 Tips from Siemens Energy for Success with Automation7 Tips from Siemens Energy for Success with Automation
7 Tips from Siemens Energy for Success with Automation
 
ASMUG February 2015 Knowledge Event
ASMUG February 2015 Knowledge EventASMUG February 2015 Knowledge Event
ASMUG February 2015 Knowledge Event
 
Lecture3
Lecture3Lecture3
Lecture3
 
Lecture 01 Software Process Maturity.pptx
Lecture 01 Software Process Maturity.pptxLecture 01 Software Process Maturity.pptx
Lecture 01 Software Process Maturity.pptx
 

More from Educational Technology

The use of programming tasks in interactive videos to increase learning effec...
The use of programming tasks in interactive videos to increase learning effec...The use of programming tasks in interactive videos to increase learning effec...
The use of programming tasks in interactive videos to increase learning effec...Educational Technology
 
Analysis of students' behavior watching iMooX courses with interactive elements
Analysis of students' behavior watching iMooX courses with interactive elementsAnalysis of students' behavior watching iMooX courses with interactive elements
Analysis of students' behavior watching iMooX courses with interactive elementsEducational Technology
 
Erhebung von Lernaktivitäten in einem Pop-Up-Makerspace mit einer technischen...
Erhebung von Lernaktivitäten in einem Pop-Up-Makerspace mit einer technischen...Erhebung von Lernaktivitäten in einem Pop-Up-Makerspace mit einer technischen...
Erhebung von Lernaktivitäten in einem Pop-Up-Makerspace mit einer technischen...Educational Technology
 
Mixed Reality im Distance Learning in der Hochschullehre
Mixed Reality im Distance Learning in der HochschullehreMixed Reality im Distance Learning in der Hochschullehre
Mixed Reality im Distance Learning in der HochschullehreEducational Technology
 
Development of a WCAG theme for a learning management system
Development of a WCAG theme for a learning management systemDevelopment of a WCAG theme for a learning management system
Development of a WCAG theme for a learning management systemEducational Technology
 
Math trainer as a chatbot via system(push) messages for Android
Math trainer as a chatbot via system(push) messages for AndroidMath trainer as a chatbot via system(push) messages for Android
Math trainer as a chatbot via system(push) messages for AndroidEducational Technology
 
Empirical Analysis of Automated Editing of Raw Learning Video Footage
Empirical Analysis of Automated Editing of Raw Learning Video FootageEmpirical Analysis of Automated Editing of Raw Learning Video Footage
Empirical Analysis of Automated Editing of Raw Learning Video FootageEducational Technology
 
Fächerintegrativer Unterricht am Beispiel der Leichtathletik
Fächerintegrativer Unterricht am Beispiel der LeichtathletikFächerintegrativer Unterricht am Beispiel der Leichtathletik
Fächerintegrativer Unterricht am Beispiel der LeichtathletikEducational Technology
 
DENKEN UND TECHNIK Über manipulative Auswirkungen von Internettechnologien
DENKEN UND TECHNIK Über manipulative Auswirkungen von InternettechnologienDENKEN UND TECHNIK Über manipulative Auswirkungen von Internettechnologien
DENKEN UND TECHNIK Über manipulative Auswirkungen von InternettechnologienEducational Technology
 
Empfehlungen für den Unterricht im Fach Informatik für Menschen mit Autismus-...
Empfehlungen für den Unterricht im Fach Informatik für Menschen mit Autismus-...Empfehlungen für den Unterricht im Fach Informatik für Menschen mit Autismus-...
Empfehlungen für den Unterricht im Fach Informatik für Menschen mit Autismus-...Educational Technology
 
Entwicklung eines Online-Kurses für digitale Kompetenzen für Studienanfänger:...
Entwicklung eines Online-Kurses für digitale Kompetenzen für Studienanfänger:...Entwicklung eines Online-Kurses für digitale Kompetenzen für Studienanfänger:...
Entwicklung eines Online-Kurses für digitale Kompetenzen für Studienanfänger:...Educational Technology
 
Development of a mobile French language learning platform
Development of a mobile French language learning platformDevelopment of a mobile French language learning platform
Development of a mobile French language learning platformEducational Technology
 
Learning Analytics and Spelling Acquisition in German - the Path to Indivdual...
Learning Analytics and Spelling Acquisition in German - the Path to Indivdual...Learning Analytics and Spelling Acquisition in German - the Path to Indivdual...
Learning Analytics and Spelling Acquisition in German - the Path to Indivdual...Educational Technology
 
Fächerintegrativer Unterricht am Beispiel des Lernroboters Thymio
Fächerintegrativer Unterricht am Beispiel des Lernroboters ThymioFächerintegrativer Unterricht am Beispiel des Lernroboters Thymio
Fächerintegrativer Unterricht am Beispiel des Lernroboters ThymioEducational Technology
 
Einsatz von Mixed Reality im Klassenzimmer
Einsatz von Mixed Reality im KlassenzimmerEinsatz von Mixed Reality im Klassenzimmer
Einsatz von Mixed Reality im KlassenzimmerEducational Technology
 
Chatbots for Brand Representation in Comparison with Traditional Websites
Chatbots for Brand Representation in Comparison with Traditional WebsitesChatbots for Brand Representation in Comparison with Traditional Websites
Chatbots for Brand Representation in Comparison with Traditional WebsitesEducational Technology
 
Development of a learning diary for a MOOC platform
Development of a learning diary for a MOOC platformDevelopment of a learning diary for a MOOC platform
Development of a learning diary for a MOOC platformEducational Technology
 

More from Educational Technology (20)

The use of programming tasks in interactive videos to increase learning effec...
The use of programming tasks in interactive videos to increase learning effec...The use of programming tasks in interactive videos to increase learning effec...
The use of programming tasks in interactive videos to increase learning effec...
 
Analysis of students' behavior watching iMooX courses with interactive elements
Analysis of students' behavior watching iMooX courses with interactive elementsAnalysis of students' behavior watching iMooX courses with interactive elements
Analysis of students' behavior watching iMooX courses with interactive elements
 
Portability of Mobile Applications
Portability of Mobile ApplicationsPortability of Mobile Applications
Portability of Mobile Applications
 
Erhebung von Lernaktivitäten in einem Pop-Up-Makerspace mit einer technischen...
Erhebung von Lernaktivitäten in einem Pop-Up-Makerspace mit einer technischen...Erhebung von Lernaktivitäten in einem Pop-Up-Makerspace mit einer technischen...
Erhebung von Lernaktivitäten in einem Pop-Up-Makerspace mit einer technischen...
 
Mixed Reality im Distance Learning in der Hochschullehre
Mixed Reality im Distance Learning in der HochschullehreMixed Reality im Distance Learning in der Hochschullehre
Mixed Reality im Distance Learning in der Hochschullehre
 
Development of a WCAG theme for a learning management system
Development of a WCAG theme for a learning management systemDevelopment of a WCAG theme for a learning management system
Development of a WCAG theme for a learning management system
 
Math trainer as a chatbot via system(push) messages for Android
Math trainer as a chatbot via system(push) messages for AndroidMath trainer as a chatbot via system(push) messages for Android
Math trainer as a chatbot via system(push) messages for Android
 
Empirical Analysis of Automated Editing of Raw Learning Video Footage
Empirical Analysis of Automated Editing of Raw Learning Video FootageEmpirical Analysis of Automated Editing of Raw Learning Video Footage
Empirical Analysis of Automated Editing of Raw Learning Video Footage
 
Fächerintegrativer Unterricht am Beispiel der Leichtathletik
Fächerintegrativer Unterricht am Beispiel der LeichtathletikFächerintegrativer Unterricht am Beispiel der Leichtathletik
Fächerintegrativer Unterricht am Beispiel der Leichtathletik
 
DENKEN UND TECHNIK Über manipulative Auswirkungen von Internettechnologien
DENKEN UND TECHNIK Über manipulative Auswirkungen von InternettechnologienDENKEN UND TECHNIK Über manipulative Auswirkungen von Internettechnologien
DENKEN UND TECHNIK Über manipulative Auswirkungen von Internettechnologien
 
Empfehlungen für den Unterricht im Fach Informatik für Menschen mit Autismus-...
Empfehlungen für den Unterricht im Fach Informatik für Menschen mit Autismus-...Empfehlungen für den Unterricht im Fach Informatik für Menschen mit Autismus-...
Empfehlungen für den Unterricht im Fach Informatik für Menschen mit Autismus-...
 
Entwicklung eines Online-Kurses für digitale Kompetenzen für Studienanfänger:...
Entwicklung eines Online-Kurses für digitale Kompetenzen für Studienanfänger:...Entwicklung eines Online-Kurses für digitale Kompetenzen für Studienanfänger:...
Entwicklung eines Online-Kurses für digitale Kompetenzen für Studienanfänger:...
 
School Start Screening Tool
School Start Screening ToolSchool Start Screening Tool
School Start Screening Tool
 
Development of a mobile French language learning platform
Development of a mobile French language learning platformDevelopment of a mobile French language learning platform
Development of a mobile French language learning platform
 
Learning Analytics and Spelling Acquisition in German - the Path to Indivdual...
Learning Analytics and Spelling Acquisition in German - the Path to Indivdual...Learning Analytics and Spelling Acquisition in German - the Path to Indivdual...
Learning Analytics and Spelling Acquisition in German - the Path to Indivdual...
 
Learning Analytics and MOOCs
Learning Analytics and MOOCsLearning Analytics and MOOCs
Learning Analytics and MOOCs
 
Fächerintegrativer Unterricht am Beispiel des Lernroboters Thymio
Fächerintegrativer Unterricht am Beispiel des Lernroboters ThymioFächerintegrativer Unterricht am Beispiel des Lernroboters Thymio
Fächerintegrativer Unterricht am Beispiel des Lernroboters Thymio
 
Einsatz von Mixed Reality im Klassenzimmer
Einsatz von Mixed Reality im KlassenzimmerEinsatz von Mixed Reality im Klassenzimmer
Einsatz von Mixed Reality im Klassenzimmer
 
Chatbots for Brand Representation in Comparison with Traditional Websites
Chatbots for Brand Representation in Comparison with Traditional WebsitesChatbots for Brand Representation in Comparison with Traditional Websites
Chatbots for Brand Representation in Comparison with Traditional Websites
 
Development of a learning diary for a MOOC platform
Development of a learning diary for a MOOC platformDevelopment of a learning diary for a MOOC platform
Development of a learning diary for a MOOC platform
 

Recently uploaded

Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxAshokKarra1
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSJoshuaGantuangco2
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfJemuel Francisco
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxthorishapillay1
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPCeline George
 
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxMULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxAnupkumar Sharma
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Celine George
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfMr Bounab Samir
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...Postal Advocate Inc.
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Celine George
 
Culture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptxCulture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptxPoojaSen20
 
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfAMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfphamnguyenenglishnb
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfSpandanaRallapalli
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONHumphrey A Beña
 
FILIPINO PSYCHology sikolohiyang pilipino
FILIPINO PSYCHology sikolohiyang pilipinoFILIPINO PSYCHology sikolohiyang pilipino
FILIPINO PSYCHology sikolohiyang pilipinojohnmickonozaleda
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Celine George
 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management SystemChristalin Nelson
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)lakshayb543
 
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptxAUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptxiammrhaywood
 

Recently uploaded (20)

Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptx
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptx
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERP
 
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxMULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
 
Culture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptxCulture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptx
 
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfAMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdf
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
 
FILIPINO PSYCHology sikolohiyang pilipino
FILIPINO PSYCHology sikolohiyang pilipinoFILIPINO PSYCHology sikolohiyang pilipino
FILIPINO PSYCHology sikolohiyang pilipino
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17
 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management System
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
 
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptxAUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
 

Automated system testing for a learning management system

  • 1. WISSEN TECHNIK LEIDENSCHAFT Automated system testing for a learning management system 31.10.2019 Lukas Krisper
  • 2. Agenda • Motivation • Test Automation • Test Cases for an LMS • Test Data for an LMS • Implementation and Infrastructure • Conclusion Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 2
  • 3. Agenda • Motivation • Test Automation • Test Cases for an LMS • Test Data for an LMS • Implementation and Infrastructure • Conclusion Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 3
  • 4. A shift towards Agile Software Development • Over the last two decades … • Emerge of agile methodologies in software development • Acceleration of software delivery and feedback cycles • Automation of manual processes • Quality Assurance? • Only 20% of IT organisations have automated more than half of their test cases (State of Testing Report, 2018) Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 4 Motivation
  • 5. New Releases in Summer 2019 • TeachCenter 3.0 • Learning Management System (LMS) • Migration of whole LMS to new Moodle Version (3.5) • New GUI for all users • Set of Unit-Tests existed • Sparely documented manual tests Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 5 Motivation
  • 6. Research Questions • (RQ1) How can the existing core functionality of a large software system be assured automatically in new versions of the system? • (RQ2) Which test cases and test suites need to be designed to test a learning management system effectively? • (RQ3) Which test data is needed to test a learning management system and how can the data be provided to automated test cases? Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 6 Motivation
  • 7. Agenda • Motivation • Test Automation • Test Cases for an LMS • Test Data for an LMS • Implementation and Infrastructure • Conclusion Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 7
  • 8. Focus of Automation Activities • Software Quality Characteristic*: Functional Suitability • Testing Level: System Testing • Testing Type: Regression Tests Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 8 Test Automation *According to ISO-25010
  • 9. Software Quality Characteristic: Functional Suitability Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 9 Test Automation • Does the software product do what it is supposed to do? • Functional testing as basis of all testing activities • A software product that does not provide functional suitability is rather worthless • E.g. calculator that calculates very fast and has a nice UI, but the calculations are wrong 2 + 2 = 5
  • 10. Testing Level: System Testing Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 10 Test Automation • Software product is considered in its entirety • Test environment has close resemblance to production environment • Tests conducted from user’s perspective • Typically using the systems GUI for interaction • Automated system tests as second line of defense • If tests fail at this level → malfunctioning system + wrong or missing test at lower testing level
  • 11. Testing Type: Regression Tests Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 11 Test Automation • Is already existing functionality affected by the changes applied to a software? • The first type of tests to be considered when automating tests • Quickly run a set of tests after applying changes: • Extensions to a feature • Bug fixes • Refactorings • … • Especially useful when changes happen late in the project and time for manual testing is short
  • 12. Agenda • Motivation • Test Automation • Test Cases for an LMS • Test Data for an LMS • Implementation and Infrastructure • Conclusion Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 12
  • 13. What Test Cases should be automated? • Important consideration! • Interview with first level support of TeachCenter 2.0 • Research in literature on usages of LMS • Results: • Knowledge on most important use cases for students and teachers E.g. reading the course’s contents, communicating with other participants, submitting material to the course, … • > 30 test cases combined to different test suites Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 13 Test Cases for a LMS
  • 14. Agenda • Motivation • Test Automation • Test Cases for an LMS • Test Data for an LMS • Implementation and Infrastructure • Conclusion Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 14
  • 15. Real Data vs Synthetic Data • Real Data • Transfer data from production environment to test environment • Data has to be edited (according to laws on data protection/privacy*) • Important: Keep consistency in data set! • Synthetic Data • Newly created data for the purpose of testing • Always GDPR compliant Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 15 Test Data for a LMS * e.g. General Data Protection Regulation (GDPR)
  • 16. Data for a LMS • A LMS typically contains data on • Courses (course descriptions, learning material, …) • Data on people involved in the courses (names, email-addresses, …) • Data from interaction of people with the courses (submissions, …) • TeachCenter 3.0 is tested with both synthetic and real data • Data used for automated tests is labeled as such Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 16 Test Data for a LMS
  • 17. Agenda • Motivation • Test Automation • Test Cases for an LMS • Test Data for an LMS • Implementation and Infrastructure • Conclusion Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 17
  • 18. Overview on Infrastructure Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 18 Implementation and Infrastructure
  • 19. Test Suite 1 Test Case 1 Test Case n Test Case 2 … Test Suite 1 Test Case 1 Test Case n Test Case 2 … Overview on Implementation Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 19 Implementation and Infrastructure Test Suite 1 Test Case 1 Test Case n Test Case 2 … Test Data Manager Test Driver Utility e.g. initialise headless Chrome browser with cleared cache e.g. get PDF files for submissions, references to test data stored in JSON files, … Page Object 1Page Object 1Page Object 1 TestNG Page Object 1Page Object 1 Helper Classes e.g. taking screenshots on errors See following slides
  • 20. PageObject Design Pattern Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 20 Implementation and Infrastructure • Components of a website are modelled into reusable objects → “Page Objects” • Page Objects offer functionality to interact with website (click links, enter input fields, …) • Tests use Page Objects to interact with website (perform action → assert result of action)
  • 21. Identification of Objects in UI Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 21 Implementation and Infrastructure • Tests should be executable regardless … • screen resolution • window sizes • language settings • Identification of objects using stable features (IDs or XPath expressions) DOM Element <button type= "button" id= "btn1" data-role= "next "> Next </button > ID btn1 XPath expression //button[@data-role=’next’]
  • 22. Agenda • Motivation • Test Automation • Test Cases for an LMS • Test Data for an LMS • Implementation and Infrastructure • Conclusion Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 22
  • 23. (RQ1) How can the existing core functionality of a large software system be assured automatically in new versions of the system? • Regression Tests for „Functional Suitabilty“ • System Testing Level • Large software system = many integrated components that interact with each other → “high” testing level to ensure stability and detect side effects • Continuous Integration Environment (Automation Server) Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 23 Conclusion
  • 24. (RQ2) Which test cases and test suites need to be designed to test a learning management system effectively? • Identification of use cases • Interview with 1st level support + literature research • Prioritisation of use cases • Implementation of test cases based on use case • Execution of suites of test cases according to prioritisation of use cases • Multiple times a day ~ once a week Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 24 Conclusion
  • 25. (RQ3) Which test data is needed to test a learning management system and how can the data be provided to automated test cases? • Synthetic and real test data • 1 configured course with various activities and resources • 1 student‘s account (enrolled to course) • 1 teacher‘s account (enrolled to course) • 1 PDF file • Test data is persisted on test system (references in JSON-files) … • Or provided to the test cases on demand • Separation of test data and automated test cases • No hardcoded test data Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 25 Conclusion
  • 26. Thank you for your attention! Lukas Krisper, 31.10.2019 Automated system testing for a learning management system 26 Conclusion