SlideShare a Scribd company logo
1 of 22
Download to read offline
Choosing the Right Testing Tools and Systems Under
Test (SUTs) for Practical Exercises in Testing
Education
Vahid Garousi, PhD, PEng
Software Quality Engineering Research Group (SoftQual)
Schulich School of Engineering, University of Calgary
Alberta, CANADA
Contents of this talk
• A brief analysis on the choices of testing tools
and SUTs used in seven selected software
testing courses delivered in North American
universities.
• Observations are made w.r.t. teaching and
students learning based on
– the choices of size and complexity of SUTs
and also
– The complexity and strength of testing tools
used by students.
• Experiences from using realistic exercises and
Background
• We need to use realistic and
relevant Systems Under Test
(SUT), and
• realistic / commercial testing
tools.
• Otherwise, students will not be
ready to test large-scale
industrial software systems after
they graduate.
• The need to effectively teach software engineering students
how to solve real-world problems…
• In the context of software testing education, testing tools,
exercises, projects and assignments should be practical and
realistic.
Disclaimer
• The analyses made in this talk are purely objective,
have no personal bias, and are only intended to help
us design better testing exercises and assignments.
• No personal judgment is intended w.r.t. the
instructors of the courses being analyzed.
• The data have been gathered to the maximum
accuracy possible.
• But there is no guarantee for the accuracy of data
and thus the derived analyses based on them.
Different Alternatives currently in use and
Observations
Various open-source or commercial systems (one
SUT per student), e.g.:
RUBiS
SIP Communicator
Jarnal: a PDF annotation program
jEdit
Apache Tomcat
JFreeChart
Various open-source or commercial tools (one tool
per student), e.g.:
IBM Rational Functional Tester
IBM Rational Manual Tester
Parasoft Jtest
Parasoft C++test
Parasoft .TEST
University of Calgary
(by the author) [7]
A small library book loan systemTests were automated using Unix command-line
scripts
Queen's University [6]
A small-scale office suite called TerpOffice
(developed at UMD)
JUnitUniversity of Maryland
[5]
A 49-LOC C programProteumIM-2.0 (mutation tool)
www.google.comJMeter
A hypothetical library checkout systemTelcordia AR Greenhouse Efficient Test Case
Generation Service (AETG)
A 73-LOC C programxSuds (coverage analysis tool)
A simple Triangle classJUnitPurdue University [4]
A VoIP application developed by students in a
previous course
JUnit, CPPUnitUniversity of Waterloo
[3]
Presentation tool, part of the Open Office suiteNone (students apparently used the black-box
techniques manually).
Florida Institute of
Technology [2]
A simple hypothetical landing gear safety system,
and an Automatic Teller Machine
JUnitCarleton University [1]
SUT(s)Testing tool(s)Testing course at …
Different Alternatives currently in use and
Observations
Various open-source or commercial systems (one
SUT per student), e.g.:
RUBiS
SIP Communicator
Jarnal: a PDF annotation program
jEdit
Apache Tomcat
JFreeChart
Various open-source or commercial tools (one tool
per student), e.g.:
IBM Rational Functional Tester
IBM Rational Manual Tester
Parasoft Jtest
Parasoft C++test
Parasoft .TEST
University of Calgary
(by the author) [7]
A small library book loan systemTests were automated using Unix command-line
scripts
Queen's University [6]
A small-scale office suite called TerpOffice
(developed at UMD)
JUnitUniversity of Maryland
[5]
A 49-LOC C programProteumIM-2.0 (mutation tool)
www.google.comJMeter
A hypothetical library checkout systemTelcordia AR Greenhouse Efficient Test Case
Generation Service (AETG)
A 73-LOC C programxSuds (coverage analysis tool)
A simple Triangle classJUnitPurdue University [4]
A VoIP application developed by students in a
previous course
JUnit, CPPUnitUniversity of Waterloo
[3]
Presentation tool, part of the Open Office suiteNone (students apparently used the black-box
techniques manually to derive the test suites).
Florida Institute of
Technology [2]
A simple hypothetical landing gear safety system,
and an Automatic Teller Machine
JUnitCarleton University [1]
SUT(s)Testing tool(s)Testing course at …
Different Alternatives currently in use and
Observations
Various open-source or commercial systems (one
SUT per student), e.g.:
RUBiS
SIP Communicator
Jarnal: a PDF annotation program
jEdit
Apache Tomcat
JFreeChart
Various open-source or commercial tools (one tool
per student), e.g.:
IBM Rational Functional Tester
IBM Rational Manual Tester
Parasoft Jtest
Parasoft C++test
Parasoft .TEST
University of Calgary
(by the author) [7]
A small library book loan systemTests were automated using Unix command-line
scripts
Queen's University [6]
A small-scale office suite called TerpOffice
(developed at UMD)
JUnitUniversity of Maryland
[5]
A 49-LOC C programProteumIM-2.0 (mutation tool)
www.google.comJMeter
A hypothetical library checkout systemTelcordia AR Greenhouse Efficient Test Case
Generation Service (AETG)
A 73-LOC C programxSuds (coverage analysis tool)
A simple Triangle classJUnitPurdue University [4]
A VoIP application developed by students in a
previous course
JUnit, CPPUnitUniversity of Waterloo
[3]
Presentation tool, part of the Open Office suiteNone (students apparently used the black-box
techniques manually).
Florida Institute of
Technology [2]
A simple hypothetical landing gear safety system,
and an Automatic Teller Machine
JUnitCarleton University [1]
SUT(s)Testing tool(s)Testing course at …
Different Alternatives currently in use and
Observations
Various open-source or commercial systems (one
SUT per student), e.g.:
RUBiS
SIP Communicator
Jarnal: a PDF annotation program
jEdit
Apache Tomcat
JFreeChart
Various open-source or commercial tools (one tool
per student), e.g.:
IBM Rational Functional Tester
IBM Rational Manual Tester
Parasoft Jtest
Parasoft C++test
Parasoft .TEST
University of Calgary
(by the author) [7]
A small library book loan systemTests were automated using Unix command-line
scripts
Queen's University [6]
A small-scale office suite called TerpOffice
(developed at UMD)
JUnitUniversity of Maryland
[5]
A 49-LOC C programProteumIM-2.0 (mutation tool)
www.google.comJMeter
A hypothetical library checkout systemTelcordia AR Greenhouse Efficient Test Case
Generation Service (AETG)
A 73-LOC C programxSuds (coverage analysis tool)
A simple Triangle classJUnitPurdue University [4]
A VoIP application developed by students in a
previous course
JUnit, CPPUnitUniversity of Waterloo
[3]
Presentation tool, part of the Open Office suiteNone (students apparently used the black-box
techniques manually).
Florida Institute of
Technology [2]
A simple hypothetical landing gear safety system,
and an Automatic Teller Machine
JUnitCarleton University [1]
SUT(s)Testing tool(s)Testing course at …
Different Alternatives currently in use and
Observations
Various open-source or commercial systems (one
SUT per student), e.g.:
RUBiS
SIP Communicator
Jarnal: a PDF annotation program
jEdit
Apache Tomcat
JFreeChart
Various open-source or commercial tools (one tool
per student), e.g.:
IBM Rational Functional Tester
IBM Rational Manual Tester
Parasoft Jtest
Parasoft C++test
Parasoft .TEST
University of Calgary
(by the author) [7]
A small library book loan systemTests were automated using Unix command-line
scripts
Queen's University [6]
A small-scale office suite called TerpOffice
(developed at UMD)
JUnitUniversity of Maryland
[5]
A 49-LOC C programProteumIM-2.0 (mutation tool)
www.google.comJMeter
A hypothetical library checkout systemTelcordia AR Greenhouse Efficient Test Case
Generation Service (AETG)
A 73-LOC C programxSuds (coverage analysis tool)
A simple Triangle classJUnitPurdue University [4]
A VoIP application developed by students in a
previous course
JUnit, CPPUnitUniversity of Waterloo
[3]
Presentation tool, part of the Open Office suiteNone (students apparently used the black-box
techniques manually).
Florida Institute of
Technology [2]
A simple hypothetical landing gear safety system,
and an Automatic Teller Machine
JUnitCarleton University [1]
SUT(s)Testing tool(s)Testing course at …
Different Alternatives currently in use and
Observations
Various open-source or commercial systems (one
SUT per student), e.g.:
RUBiS
SIP Communicator
Jarnal: a PDF annotation program
jEdit
Apache Tomcat
JFreeChart
Various open-source or commercial tools (one tool
per student), e.g.:
IBM Rational Functional Tester
IBM Rational Manual Tester
Parasoft Jtest
Parasoft C++test
Parasoft .TEST
University of Calgary
(by the author) [7]
A small library book loan systemTests were automated using Unix command-line
scripts
Queen's University [6]
A small-scale office suite called TerpOffice
(developed at UMD)
JUnitUniversity of Maryland
[5]
A 49-LOC C programProteumIM-2.0 (mutation tool)
www.google.comJMeter
A hypothetical library checkout systemTelcordia AR Greenhouse Efficient Test Case
Generation Service (AETG)
A 73-LOC C programxSuds (coverage analysis tool)
A simple Triangle classJUnitPurdue University [4]
A VoIP application developed by students in a
previous course
JUnit, CPPUnitUniversity of Waterloo
[3]
Presentation tool, part of the Open Office suiteNone (students apparently used the black-box
techniques manually).
Florida Institute of
Technology [2]
A simple hypothetical landing gear safety system,
and an Automatic Teller Machine
JUnitCarleton University [1]
SUT(s)Testing tool(s)Testing course at …
Different Alternatives currently in use and
Observations
Various open-source or commercial systems (one
SUT per student), e.g.:
RUBiS
SIP Communicator
Jarnal: a PDF annotation program
jEdit
Apache Tomcat
JFreeChart
Various open-source or commercial tools (one tool
per student), e.g.:
IBM Rational Functional Tester
IBM Rational Manual Tester
Parasoft Jtest
Parasoft C++test
Parasoft .TEST
University of Calgary
(by the author) [7]
A small library book loan systemTests were automated using Unix command-line
scripts
Queen's University [6]
A small-scale office suite called TerpOffice
(developed at UMD)
JUnitUniversity of Maryland
[5]
A 49-LOC C programProteumIM-2.0 (mutation tool)
www.google.comJMeter
A hypothetical library checkout systemTelcordia AR Greenhouse Efficient Test Case
Generation Service (AETG)
A 73-LOC C programxSuds (coverage analysis tool)
A simple Triangle classJUnitPurdue University [4]
A VoIP application developed by students in a
previous course
JUnit, CPPUnitUniversity of Waterloo
[3]
Presentation tool, part of the Open Office suiteNone (students apparently used the black-box
techniques manually).
Florida Institute of
Technology [2]
A simple hypothetical landing gear safety system,
and an Automatic Teller Machine
JUnitCarleton University [1]
SUT(s)Testing tool(s)Testing course at …
Tradeoff - Pros and Cons of Different
Choices
• Some of the courses use small-scale (“toy”) or hypothetical
SUTs in their exercises.
• For example, in the Purdue University’s course, students learn
code coverage through a lab exercise by using a less-known
tool called xSuds to test a 73-LOC C program (SUT).
• It seems to the author that this scale of SUTs will not prepare
students well enough for real-world industrial settings.
• In the Queen's university’s testing course, students automated
their test cases using ad-hoc Unix command-line scripts.
• According to the project guidelines in that course, it seems that
it is possible and better to use industry-standard testing
frameworks (e.g., JUnit) instead of ad-hoc Unix scripts.
Tradeoff - Pros and Cons of Different
Choices
• Also some of the courses (such as
Purdue’s) often use simple research-
oriented testing tools, e.g., ProteumIM-2.0
(a mutation tool).
• Perhaps, it is a better idea to adopt and
use more recent and powerful tools
instead, e.g., MuClipse a mutation testing
plug-in for the Eclipse IDE.
Breadth of Tools Used
• The courses at Purdue University and the University of Calgary
(taught by myself) seem to be more comprehensive than the other
five courses.
• Purdue’s course involves the students in working with five different
testing tools, each for a specific type of testing, e.g., JMeter for
performance testing, and xSuds for coverage analysis.
Various open-source or commercial systems (one
SUT per student), e.g.:
RUBiS
SIP Communicator
Jarnal: a PDF annotation program
jEdit
Apache Tomcat
JFreeChart
Various open-source or commercial tools (one tool
per student), e.g.:
IBM Rational Functional Tester
IBM Rational Manual Tester
Parasoft Jtest
Parasoft C++test
Parasoft .TEST
University of Calgary
(by the author) [7]
A 49-LOC C programProteumIM-2.0 (mutation tool)
www.google.comJMeter
A hypothetical library checkout systemTelcordia AR Greenhouse Efficient Test Case
Generation Service (AETG)
A 73-LOC C programxSuds (coverage analysis tool)
A simple Triangle classJUnitPurdue University [4]
SUT(s)Testing tool(s)Testing course at …
The approach (choices) taken in
the University of Calgary’s Course
• Was first offered in Winter 2008.
• Unlike the other six courses which
are undergraduate-level, this course
is graduate-level
• 9 students + 3 people from the SW
industry
• Each student spent the entire three-month term to install,
learn and use a commercial testing tool to test a real-world
large-scale SUT (details next…).
• Students handed in three comprehensive reports in three
milestones of the project:
– 1: proposal
– 2: interim report
– 3: final report
The University of Calgary’s Course - Goals
• The goal was to incorporate both breadth
and depth in students’ learning
• Depth in learning each tool in detail by
each student
• Breadth in learning by having project
presentations and in-depth discussions,
tool comparisons, after each presentation
among students
The University of Calgary’s Course:
The Testing Tools and Systems Under Test (SUTs)
Various open-source or commercial
systems (one SUT per student), e.g.:
jEdit
Apache Tomcat
JFreeChart
RUBiS: a web-based ebay-like
application written in J2EE
A large-scale commercial web
application for an oil & gas government
agency.
Jarnal: a PDF annotation program
BlogEngine.NET
SIP Communicator: an open-source java-
based internet phone protocol
A commercial USB camera control
system for robot vision
Various open-source or commercial tools
(one tool per student), e.g.:
IBM Rational Functional Tester
IBM Rational Manual Tester
IBM Rational AppScan
IBM Rational Test RealTime
IBM Rational Performance Tester
IBM Rational TestManager
Parasoft Jtest
Parasoft C++test
Parasoft .TEST
JUnit
CUnit
NUnit
JMeter
Fitnesse Acceptance Testing Framework
SUTsTesting tools
The University of Calgary’s Course -
Results
• Formal course evaluations have confirmed the course
success in using realistic exercises for its project.
• For example, 92% of students believed that they
“learned a lot in this course”.
• 91% believed the “support materials and tools were
helpful”.
• Only after one offering, the course has become very
popular in the department
• There is already lots of student and industry interest in
taking it in Winter 2009 term. (it is in full capacity this
term)
Summary and Recommendations:
Choosing the right SUTs and Testing Tools
• It is hard to generalize the findings and
observations…
• But the author would recommended that testing
educators should align the choices of SUTs and
tools with the following criteria…
– the ultimate goal of the particular course at hand, e.g.,
learning goals and the end product (the type of testers)
needed at the end of the course
– the type and background of the students
– and also the time and resources available in the given
course, e.g., are tool licenses free, or are their costs
within budget?
Summary and Recommendations:
Choosing the right SUTs and Testing Tools
• For example, since the author’s course was
graduate-level,
• and that Calgary has a very active testing
industry,
• and it was expected that the students were going
to work in the industry soon after the course,
• also, the students in that course were senior and
had some prior knowledge/experience with
testing fundamentals.
• Thus, it was decided to use industry-strength
testing tools and large-scale SUTs in his course.
Further work is needed
• To provide better and more precise recommendations
on the subject,
• systematic surveys and comparative analysis of testing
tools for the purpose of education on different types of
testing tools.
• There are surveys such as the one in [10], but it is only
a survey of one specific type of testing tools (only
coverage measurement) and, also,
• that survey does not compare the tools from the
educational standpoint and the type of learning
outcomes gained using those tools.
• Last but not least, more experience and systematic
studies by testing educators on the choice of tools and
SUTs to draw generalizable conclusions and external
validity on the subject.
Thanks for your attention.
Q/A period…
(LAWST / WTST style!)

More Related Content

What's hot

A distinct approach for xmotif application gui test automation
A distinct approach for xmotif application gui test automationA distinct approach for xmotif application gui test automation
A distinct approach for xmotif application gui test automationeSAT Publishing House
 
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.Wolfgang Grieskamp
 
Software testing introduction
Software testing introductionSoftware testing introduction
Software testing introductionSriman Eshwar
 
Dissertation Defense
Dissertation DefenseDissertation Defense
Dissertation DefenseSung Kim
 
Research-Based Innovation with Industry: Project Experience and Lessons Learned
Research-Based Innovation with Industry: Project Experience and Lessons LearnedResearch-Based Innovation with Industry: Project Experience and Lessons Learned
Research-Based Innovation with Industry: Project Experience and Lessons LearnedLionel Briand
 
Quiz2 tonghop
 Quiz2 tonghop Quiz2 tonghop
Quiz2 tonghopDaewoo Han
 
Scalable and Cost-Effective Model-Based Software Verification and Testing
Scalable and Cost-Effective Model-Based Software Verification and TestingScalable and Cost-Effective Model-Based Software Verification and Testing
Scalable and Cost-Effective Model-Based Software Verification and TestingLionel Briand
 
Cs6502 ooad-cse-vst-au-unit-v dce
Cs6502 ooad-cse-vst-au-unit-v dceCs6502 ooad-cse-vst-au-unit-v dce
Cs6502 ooad-cse-vst-au-unit-v dcetagoreengineering
 
Validation and Verification of SYSML Activity Diagrams Using HOARE Logic
Validation and Verification of SYSML Activity Diagrams Using HOARE Logic Validation and Verification of SYSML Activity Diagrams Using HOARE Logic
Validation and Verification of SYSML Activity Diagrams Using HOARE Logic ijseajournal
 
CS8592 Object Oriented Analysis & Design - UNIT V
CS8592 Object Oriented Analysis & Design - UNIT V CS8592 Object Oriented Analysis & Design - UNIT V
CS8592 Object Oriented Analysis & Design - UNIT V pkaviya
 
An overview of automated test suites and defect density in Android
An overview of automated test suites and defect density in AndroidAn overview of automated test suites and defect density in Android
An overview of automated test suites and defect density in AndroidVahid Garousi
 
An Approach to Software Testing of Machine Learning Applications
An Approach to Software Testing of Machine Learning ApplicationsAn Approach to Software Testing of Machine Learning Applications
An Approach to Software Testing of Machine Learning Applicationsbutest
 
Unit testingandcontinousintegrationfreenest1dot4
Unit testingandcontinousintegrationfreenest1dot4Unit testingandcontinousintegrationfreenest1dot4
Unit testingandcontinousintegrationfreenest1dot4JAMK
 
Software Defect Prediction on Unlabeled Datasets
Software Defect Prediction on Unlabeled DatasetsSoftware Defect Prediction on Unlabeled Datasets
Software Defect Prediction on Unlabeled DatasetsSung Kim
 
Software testing quiz questions and answers
Software testing quiz questions and answersSoftware testing quiz questions and answers
Software testing quiz questions and answersRajendraG
 
Specification-based Verification of Incomplete Programs
Specification-based Verification of Incomplete ProgramsSpecification-based Verification of Incomplete Programs
Specification-based Verification of Incomplete ProgramsIDES Editor
 
Quiz1 tonghop
 Quiz1 tonghop Quiz1 tonghop
Quiz1 tonghopDaewoo Han
 
Object Oriented Design
Object Oriented DesignObject Oriented Design
Object Oriented DesignAMITJain879
 
International journal of computer science and innovation vol 2015-n1-paper2
International journal of computer science and innovation  vol 2015-n1-paper2International journal of computer science and innovation  vol 2015-n1-paper2
International journal of computer science and innovation vol 2015-n1-paper2sophiabelthome
 

What's hot (20)

A distinct approach for xmotif application gui test automation
A distinct approach for xmotif application gui test automationA distinct approach for xmotif application gui test automation
A distinct approach for xmotif application gui test automation
 
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
 
Software testing introduction
Software testing introductionSoftware testing introduction
Software testing introduction
 
Dissertation Defense
Dissertation DefenseDissertation Defense
Dissertation Defense
 
Research-Based Innovation with Industry: Project Experience and Lessons Learned
Research-Based Innovation with Industry: Project Experience and Lessons LearnedResearch-Based Innovation with Industry: Project Experience and Lessons Learned
Research-Based Innovation with Industry: Project Experience and Lessons Learned
 
Quiz2 tonghop
 Quiz2 tonghop Quiz2 tonghop
Quiz2 tonghop
 
Scalable and Cost-Effective Model-Based Software Verification and Testing
Scalable and Cost-Effective Model-Based Software Verification and TestingScalable and Cost-Effective Model-Based Software Verification and Testing
Scalable and Cost-Effective Model-Based Software Verification and Testing
 
Cs6502 ooad-cse-vst-au-unit-v dce
Cs6502 ooad-cse-vst-au-unit-v dceCs6502 ooad-cse-vst-au-unit-v dce
Cs6502 ooad-cse-vst-au-unit-v dce
 
Validation and Verification of SYSML Activity Diagrams Using HOARE Logic
Validation and Verification of SYSML Activity Diagrams Using HOARE Logic Validation and Verification of SYSML Activity Diagrams Using HOARE Logic
Validation and Verification of SYSML Activity Diagrams Using HOARE Logic
 
CS8592 Object Oriented Analysis & Design - UNIT V
CS8592 Object Oriented Analysis & Design - UNIT V CS8592 Object Oriented Analysis & Design - UNIT V
CS8592 Object Oriented Analysis & Design - UNIT V
 
Sdlc
SdlcSdlc
Sdlc
 
An overview of automated test suites and defect density in Android
An overview of automated test suites and defect density in AndroidAn overview of automated test suites and defect density in Android
An overview of automated test suites and defect density in Android
 
An Approach to Software Testing of Machine Learning Applications
An Approach to Software Testing of Machine Learning ApplicationsAn Approach to Software Testing of Machine Learning Applications
An Approach to Software Testing of Machine Learning Applications
 
Unit testingandcontinousintegrationfreenest1dot4
Unit testingandcontinousintegrationfreenest1dot4Unit testingandcontinousintegrationfreenest1dot4
Unit testingandcontinousintegrationfreenest1dot4
 
Software Defect Prediction on Unlabeled Datasets
Software Defect Prediction on Unlabeled DatasetsSoftware Defect Prediction on Unlabeled Datasets
Software Defect Prediction on Unlabeled Datasets
 
Software testing quiz questions and answers
Software testing quiz questions and answersSoftware testing quiz questions and answers
Software testing quiz questions and answers
 
Specification-based Verification of Incomplete Programs
Specification-based Verification of Incomplete ProgramsSpecification-based Verification of Incomplete Programs
Specification-based Verification of Incomplete Programs
 
Quiz1 tonghop
 Quiz1 tonghop Quiz1 tonghop
Quiz1 tonghop
 
Object Oriented Design
Object Oriented DesignObject Oriented Design
Object Oriented Design
 
International journal of computer science and innovation vol 2015-n1-paper2
International journal of computer science and innovation  vol 2015-n1-paper2International journal of computer science and innovation  vol 2015-n1-paper2
International journal of computer science and innovation vol 2015-n1-paper2
 

Similar to Choosing the Right Testing Tools and Systems Under Test (SUTs) for Practical Exercises in Testing Education

20090918 Agile Computer Control of a Complex Experiment
20090918 Agile Computer Control of a Complex Experiment20090918 Agile Computer Control of a Complex Experiment
20090918 Agile Computer Control of a Complex ExperimentJonathan Blakes
 
Smart document sharing application presentation(stufac connect)
Smart document sharing application presentation(stufac connect)Smart document sharing application presentation(stufac connect)
Smart document sharing application presentation(stufac connect)priyanka747
 
Intelligible Machine Learning with Malibu for bioinformatics ...
Intelligible Machine Learning with Malibu for bioinformatics ...Intelligible Machine Learning with Malibu for bioinformatics ...
Intelligible Machine Learning with Malibu for bioinformatics ...butest
 
Real Testing Scenario Strategy - Bringing It All Together For Success
Real Testing Scenario Strategy - Bringing It All Together For SuccessReal Testing Scenario Strategy - Bringing It All Together For Success
Real Testing Scenario Strategy - Bringing It All Together For SuccessAdam Sandman
 
SOFTWARE TESTING COURSE MODULES BY WWW.QATESTINGONLINETRAINING.COM
SOFTWARE TESTING COURSE MODULES BY WWW.QATESTINGONLINETRAINING.COMSOFTWARE TESTING COURSE MODULES BY WWW.QATESTINGONLINETRAINING.COM
SOFTWARE TESTING COURSE MODULES BY WWW.QATESTINGONLINETRAINING.COMKiran Chandra Chitmalla
 
Software testing: an introduction - 2017
Software testing: an introduction - 2017Software testing: an introduction - 2017
Software testing: an introduction - 2017XavierDevroey
 
4CS4-25-Java-Lab-Manual.pdf
4CS4-25-Java-Lab-Manual.pdf4CS4-25-Java-Lab-Manual.pdf
4CS4-25-Java-Lab-Manual.pdfamitbhachne
 
Automated Software Testing Framework Training by Quontra Solutions
Automated Software Testing Framework Training by Quontra SolutionsAutomated Software Testing Framework Training by Quontra Solutions
Automated Software Testing Framework Training by Quontra SolutionsQuontra Solutions
 
Software Architecture - Allocation taxonomies: building, deployment and distr...
Software Architecture - Allocation taxonomies: building, deployment and distr...Software Architecture - Allocation taxonomies: building, deployment and distr...
Software Architecture - Allocation taxonomies: building, deployment and distr...Jose Emilio Labra Gayo
 
MIT521 software testing (2012) v2
MIT521   software testing  (2012) v2MIT521   software testing  (2012) v2
MIT521 software testing (2012) v2Yudep Apoi
 
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks IJECEIAES
 
Testing tool classification
Testing tool classificationTesting tool classification
Testing tool classificationPragya Rastogi
 

Similar to Choosing the Right Testing Tools and Systems Under Test (SUTs) for Practical Exercises in Testing Education (20)

Ka3517391743
Ka3517391743Ka3517391743
Ka3517391743
 
20090918 Agile Computer Control of a Complex Experiment
20090918 Agile Computer Control of a Complex Experiment20090918 Agile Computer Control of a Complex Experiment
20090918 Agile Computer Control of a Complex Experiment
 
Gcs day1
Gcs day1Gcs day1
Gcs day1
 
Smart document sharing application presentation(stufac connect)
Smart document sharing application presentation(stufac connect)Smart document sharing application presentation(stufac connect)
Smart document sharing application presentation(stufac connect)
 
Automation Testing Syllabus - Checklist
Automation Testing Syllabus - ChecklistAutomation Testing Syllabus - Checklist
Automation Testing Syllabus - Checklist
 
Intelligible Machine Learning with Malibu for bioinformatics ...
Intelligible Machine Learning with Malibu for bioinformatics ...Intelligible Machine Learning with Malibu for bioinformatics ...
Intelligible Machine Learning with Malibu for bioinformatics ...
 
Ijcatr04051014
Ijcatr04051014Ijcatr04051014
Ijcatr04051014
 
Real Testing Scenario Strategy - Bringing It All Together For Success
Real Testing Scenario Strategy - Bringing It All Together For SuccessReal Testing Scenario Strategy - Bringing It All Together For Success
Real Testing Scenario Strategy - Bringing It All Together For Success
 
SOFTWARE TESTING COURSE MODULES BY WWW.QATESTINGONLINETRAINING.COM
SOFTWARE TESTING COURSE MODULES BY WWW.QATESTINGONLINETRAINING.COMSOFTWARE TESTING COURSE MODULES BY WWW.QATESTINGONLINETRAINING.COM
SOFTWARE TESTING COURSE MODULES BY WWW.QATESTINGONLINETRAINING.COM
 
Software testing: an introduction - 2017
Software testing: an introduction - 2017Software testing: an introduction - 2017
Software testing: an introduction - 2017
 
4CS4-25-Java-Lab-Manual.pdf
4CS4-25-Java-Lab-Manual.pdf4CS4-25-Java-Lab-Manual.pdf
4CS4-25-Java-Lab-Manual.pdf
 
coa.ppt
coa.pptcoa.ppt
coa.ppt
 
Automated Software Testing Framework Training by Quontra Solutions
Automated Software Testing Framework Training by Quontra SolutionsAutomated Software Testing Framework Training by Quontra Solutions
Automated Software Testing Framework Training by Quontra Solutions
 
Software Architecture - Allocation taxonomies: building, deployment and distr...
Software Architecture - Allocation taxonomies: building, deployment and distr...Software Architecture - Allocation taxonomies: building, deployment and distr...
Software Architecture - Allocation taxonomies: building, deployment and distr...
 
MIT521 software testing (2012) v2
MIT521   software testing  (2012) v2MIT521   software testing  (2012) v2
MIT521 software testing (2012) v2
 
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
 
Siguccs20101026
Siguccs20101026Siguccs20101026
Siguccs20101026
 
Using Robots for App Testing
Using Robots for App Testing Using Robots for App Testing
Using Robots for App Testing
 
Performance Testing: Analyzing Differences of Response Time between Performan...
Performance Testing: Analyzing Differences of Response Time between Performan...Performance Testing: Analyzing Differences of Response Time between Performan...
Performance Testing: Analyzing Differences of Response Time between Performan...
 
Testing tool classification
Testing tool classificationTesting tool classification
Testing tool classification
 

More from Vahid Garousi

Experience and best practices from automated software testing in the finance ...
Experience and best practices from automated software testing in the finance ...Experience and best practices from automated software testing in the finance ...
Experience and best practices from automated software testing in the finance ...Vahid Garousi
 
Model-based Testing (MBT) of web and mobile applications: A practical tutorial
Model-based Testing (MBT) of web and mobile applications: A practical tutorialModel-based Testing (MBT) of web and mobile applications: A practical tutorial
Model-based Testing (MBT) of web and mobile applications: A practical tutorialVahid Garousi
 
Application of TMMi to improve test approaches and processes: Experience from...
Application of TMMi to improve test approaches and processes: Experience from...Application of TMMi to improve test approaches and processes: Experience from...
Application of TMMi to improve test approaches and processes: Experience from...Vahid Garousi
 
Talk by Dr. Vahid Garousi, in the Turkey-UK Research Partnerships Event (Feb ...
Talk by Dr. Vahid Garousi, in the Turkey-UK Research Partnerships Event (Feb ...Talk by Dr. Vahid Garousi, in the Turkey-UK Research Partnerships Event (Feb ...
Talk by Dr. Vahid Garousi, in the Turkey-UK Research Partnerships Event (Feb ...Vahid Garousi
 
Industry-academia collaborations in Software Engineering: 20+ Years of Experi...
Industry-academia collaborations in Software Engineering: 20+ Years of Experi...Industry-academia collaborations in Software Engineering: 20+ Years of Experi...
Industry-academia collaborations in Software Engineering: 20+ Years of Experi...Vahid Garousi
 
Education and Training of Highly-skills Software Test Engineers
Education and Training of Highly-skills Software Test EngineersEducation and Training of Highly-skills Software Test Engineers
Education and Training of Highly-skills Software Test EngineersVahid Garousi
 
Test automation with the Gauge framework: Experience and best practices -- SE...
Test automation with the Gauge framework: Experience and best practices -- SE...Test automation with the Gauge framework: Experience and best practices -- SE...
Test automation with the Gauge framework: Experience and best practices -- SE...Vahid Garousi
 
Benefitting from the Grey Literature in Software Engineering Research
Benefitting from the Grey Literature in Software Engineering ResearchBenefitting from the Grey Literature in Software Engineering Research
Benefitting from the Grey Literature in Software Engineering ResearchVahid Garousi
 
Next level of test automation with Model-based Testing (MBT): Experience and ...
Next level of test automation with Model-based Testing (MBT): Experience and ...Next level of test automation with Model-based Testing (MBT): Experience and ...
Next level of test automation with Model-based Testing (MBT): Experience and ...Vahid Garousi
 
Slides for for JSS "Happy Hour": Aligning software engineering education with...
Slides for for JSS "Happy Hour": Aligning software engineering education with...Slides for for JSS "Happy Hour": Aligning software engineering education with...
Slides for for JSS "Happy Hour": Aligning software engineering education with...Vahid Garousi
 
Experience in conducting 19 secondary (survey) studies in Software Engineering
Experience in conducting 19 secondary (survey) studies in Software EngineeringExperience in conducting 19 secondary (survey) studies in Software Engineering
Experience in conducting 19 secondary (survey) studies in Software EngineeringVahid Garousi
 
Sustainability of Scientific Software: Experience from Several Projects
Sustainability of Scientific Software: Experience from Several ProjectsSustainability of Scientific Software: Experience from Several Projects
Sustainability of Scientific Software: Experience from Several ProjectsVahid Garousi
 
Career paths, training and learning resources in software test engineering
Career paths, training and learning resources in software test engineeringCareer paths, training and learning resources in software test engineering
Career paths, training and learning resources in software test engineeringVahid Garousi
 
Industry-academia collaborations in software testing: Success stories from Ca...
Industry-academia collaborations in software testing: Success stories from Ca...Industry-academia collaborations in software testing: Success stories from Ca...
Industry-academia collaborations in software testing: Success stories from Ca...Vahid Garousi
 
inforte.fi invited talk-Day 2: Conducting industry-relevant software enginee...
inforte.fi invited talk-Day 2: Conducting industry-relevant software enginee...inforte.fi invited talk-Day 2: Conducting industry-relevant software enginee...
inforte.fi invited talk-Day 2: Conducting industry-relevant software enginee...Vahid Garousi
 
inforte.fi invited talk-Day 1: Conducting industry-relevant software engineer...
inforte.fi invited talk-Day 1: Conducting industry-relevant software engineer...inforte.fi invited talk-Day 1: Conducting industry-relevant software engineer...
inforte.fi invited talk-Day 1: Conducting industry-relevant software engineer...Vahid Garousi
 
Can we do it better? Improving the maturity of software testing in test teams
Can we do it better? Improving the maturity of software testing in test teamsCan we do it better? Improving the maturity of software testing in test teams
Can we do it better? Improving the maturity of software testing in test teamsVahid Garousi
 
Deciding what and when to automate in testing: Experience from multiple projects
Deciding what and when to automate in testing: Experience from multiple projectsDeciding what and when to automate in testing: Experience from multiple projects
Deciding what and when to automate in testing: Experience from multiple projectsVahid Garousi
 
Engineering software systems for improving the operational efficiency of oil ...
Engineering software systems for improving the operational efficiency of oil ...Engineering software systems for improving the operational efficiency of oil ...
Engineering software systems for improving the operational efficiency of oil ...Vahid Garousi
 
Introducing automated GUI testing and observing its benefits: an industrial c...
Introducing automated GUI testing and observing its benefits: an industrial c...Introducing automated GUI testing and observing its benefits: an industrial c...
Introducing automated GUI testing and observing its benefits: an industrial c...Vahid Garousi
 

More from Vahid Garousi (20)

Experience and best practices from automated software testing in the finance ...
Experience and best practices from automated software testing in the finance ...Experience and best practices from automated software testing in the finance ...
Experience and best practices from automated software testing in the finance ...
 
Model-based Testing (MBT) of web and mobile applications: A practical tutorial
Model-based Testing (MBT) of web and mobile applications: A practical tutorialModel-based Testing (MBT) of web and mobile applications: A practical tutorial
Model-based Testing (MBT) of web and mobile applications: A practical tutorial
 
Application of TMMi to improve test approaches and processes: Experience from...
Application of TMMi to improve test approaches and processes: Experience from...Application of TMMi to improve test approaches and processes: Experience from...
Application of TMMi to improve test approaches and processes: Experience from...
 
Talk by Dr. Vahid Garousi, in the Turkey-UK Research Partnerships Event (Feb ...
Talk by Dr. Vahid Garousi, in the Turkey-UK Research Partnerships Event (Feb ...Talk by Dr. Vahid Garousi, in the Turkey-UK Research Partnerships Event (Feb ...
Talk by Dr. Vahid Garousi, in the Turkey-UK Research Partnerships Event (Feb ...
 
Industry-academia collaborations in Software Engineering: 20+ Years of Experi...
Industry-academia collaborations in Software Engineering: 20+ Years of Experi...Industry-academia collaborations in Software Engineering: 20+ Years of Experi...
Industry-academia collaborations in Software Engineering: 20+ Years of Experi...
 
Education and Training of Highly-skills Software Test Engineers
Education and Training of Highly-skills Software Test EngineersEducation and Training of Highly-skills Software Test Engineers
Education and Training of Highly-skills Software Test Engineers
 
Test automation with the Gauge framework: Experience and best practices -- SE...
Test automation with the Gauge framework: Experience and best practices -- SE...Test automation with the Gauge framework: Experience and best practices -- SE...
Test automation with the Gauge framework: Experience and best practices -- SE...
 
Benefitting from the Grey Literature in Software Engineering Research
Benefitting from the Grey Literature in Software Engineering ResearchBenefitting from the Grey Literature in Software Engineering Research
Benefitting from the Grey Literature in Software Engineering Research
 
Next level of test automation with Model-based Testing (MBT): Experience and ...
Next level of test automation with Model-based Testing (MBT): Experience and ...Next level of test automation with Model-based Testing (MBT): Experience and ...
Next level of test automation with Model-based Testing (MBT): Experience and ...
 
Slides for for JSS "Happy Hour": Aligning software engineering education with...
Slides for for JSS "Happy Hour": Aligning software engineering education with...Slides for for JSS "Happy Hour": Aligning software engineering education with...
Slides for for JSS "Happy Hour": Aligning software engineering education with...
 
Experience in conducting 19 secondary (survey) studies in Software Engineering
Experience in conducting 19 secondary (survey) studies in Software EngineeringExperience in conducting 19 secondary (survey) studies in Software Engineering
Experience in conducting 19 secondary (survey) studies in Software Engineering
 
Sustainability of Scientific Software: Experience from Several Projects
Sustainability of Scientific Software: Experience from Several ProjectsSustainability of Scientific Software: Experience from Several Projects
Sustainability of Scientific Software: Experience from Several Projects
 
Career paths, training and learning resources in software test engineering
Career paths, training and learning resources in software test engineeringCareer paths, training and learning resources in software test engineering
Career paths, training and learning resources in software test engineering
 
Industry-academia collaborations in software testing: Success stories from Ca...
Industry-academia collaborations in software testing: Success stories from Ca...Industry-academia collaborations in software testing: Success stories from Ca...
Industry-academia collaborations in software testing: Success stories from Ca...
 
inforte.fi invited talk-Day 2: Conducting industry-relevant software enginee...
inforte.fi invited talk-Day 2: Conducting industry-relevant software enginee...inforte.fi invited talk-Day 2: Conducting industry-relevant software enginee...
inforte.fi invited talk-Day 2: Conducting industry-relevant software enginee...
 
inforte.fi invited talk-Day 1: Conducting industry-relevant software engineer...
inforte.fi invited talk-Day 1: Conducting industry-relevant software engineer...inforte.fi invited talk-Day 1: Conducting industry-relevant software engineer...
inforte.fi invited talk-Day 1: Conducting industry-relevant software engineer...
 
Can we do it better? Improving the maturity of software testing in test teams
Can we do it better? Improving the maturity of software testing in test teamsCan we do it better? Improving the maturity of software testing in test teams
Can we do it better? Improving the maturity of software testing in test teams
 
Deciding what and when to automate in testing: Experience from multiple projects
Deciding what and when to automate in testing: Experience from multiple projectsDeciding what and when to automate in testing: Experience from multiple projects
Deciding what and when to automate in testing: Experience from multiple projects
 
Engineering software systems for improving the operational efficiency of oil ...
Engineering software systems for improving the operational efficiency of oil ...Engineering software systems for improving the operational efficiency of oil ...
Engineering software systems for improving the operational efficiency of oil ...
 
Introducing automated GUI testing and observing its benefits: an industrial c...
Introducing automated GUI testing and observing its benefits: an industrial c...Introducing automated GUI testing and observing its benefits: an industrial c...
Introducing automated GUI testing and observing its benefits: an industrial c...
 

Recently uploaded

Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 

Recently uploaded (20)

Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 

Choosing the Right Testing Tools and Systems Under Test (SUTs) for Practical Exercises in Testing Education

  • 1. Choosing the Right Testing Tools and Systems Under Test (SUTs) for Practical Exercises in Testing Education Vahid Garousi, PhD, PEng Software Quality Engineering Research Group (SoftQual) Schulich School of Engineering, University of Calgary Alberta, CANADA
  • 2. Contents of this talk • A brief analysis on the choices of testing tools and SUTs used in seven selected software testing courses delivered in North American universities. • Observations are made w.r.t. teaching and students learning based on – the choices of size and complexity of SUTs and also – The complexity and strength of testing tools used by students. • Experiences from using realistic exercises and
  • 3. Background • We need to use realistic and relevant Systems Under Test (SUT), and • realistic / commercial testing tools. • Otherwise, students will not be ready to test large-scale industrial software systems after they graduate. • The need to effectively teach software engineering students how to solve real-world problems… • In the context of software testing education, testing tools, exercises, projects and assignments should be practical and realistic.
  • 4. Disclaimer • The analyses made in this talk are purely objective, have no personal bias, and are only intended to help us design better testing exercises and assignments. • No personal judgment is intended w.r.t. the instructors of the courses being analyzed. • The data have been gathered to the maximum accuracy possible. • But there is no guarantee for the accuracy of data and thus the derived analyses based on them.
  • 5. Different Alternatives currently in use and Observations Various open-source or commercial systems (one SUT per student), e.g.: RUBiS SIP Communicator Jarnal: a PDF annotation program jEdit Apache Tomcat JFreeChart Various open-source or commercial tools (one tool per student), e.g.: IBM Rational Functional Tester IBM Rational Manual Tester Parasoft Jtest Parasoft C++test Parasoft .TEST University of Calgary (by the author) [7] A small library book loan systemTests were automated using Unix command-line scripts Queen's University [6] A small-scale office suite called TerpOffice (developed at UMD) JUnitUniversity of Maryland [5] A 49-LOC C programProteumIM-2.0 (mutation tool) www.google.comJMeter A hypothetical library checkout systemTelcordia AR Greenhouse Efficient Test Case Generation Service (AETG) A 73-LOC C programxSuds (coverage analysis tool) A simple Triangle classJUnitPurdue University [4] A VoIP application developed by students in a previous course JUnit, CPPUnitUniversity of Waterloo [3] Presentation tool, part of the Open Office suiteNone (students apparently used the black-box techniques manually). Florida Institute of Technology [2] A simple hypothetical landing gear safety system, and an Automatic Teller Machine JUnitCarleton University [1] SUT(s)Testing tool(s)Testing course at …
  • 6. Different Alternatives currently in use and Observations Various open-source or commercial systems (one SUT per student), e.g.: RUBiS SIP Communicator Jarnal: a PDF annotation program jEdit Apache Tomcat JFreeChart Various open-source or commercial tools (one tool per student), e.g.: IBM Rational Functional Tester IBM Rational Manual Tester Parasoft Jtest Parasoft C++test Parasoft .TEST University of Calgary (by the author) [7] A small library book loan systemTests were automated using Unix command-line scripts Queen's University [6] A small-scale office suite called TerpOffice (developed at UMD) JUnitUniversity of Maryland [5] A 49-LOC C programProteumIM-2.0 (mutation tool) www.google.comJMeter A hypothetical library checkout systemTelcordia AR Greenhouse Efficient Test Case Generation Service (AETG) A 73-LOC C programxSuds (coverage analysis tool) A simple Triangle classJUnitPurdue University [4] A VoIP application developed by students in a previous course JUnit, CPPUnitUniversity of Waterloo [3] Presentation tool, part of the Open Office suiteNone (students apparently used the black-box techniques manually to derive the test suites). Florida Institute of Technology [2] A simple hypothetical landing gear safety system, and an Automatic Teller Machine JUnitCarleton University [1] SUT(s)Testing tool(s)Testing course at …
  • 7. Different Alternatives currently in use and Observations Various open-source or commercial systems (one SUT per student), e.g.: RUBiS SIP Communicator Jarnal: a PDF annotation program jEdit Apache Tomcat JFreeChart Various open-source or commercial tools (one tool per student), e.g.: IBM Rational Functional Tester IBM Rational Manual Tester Parasoft Jtest Parasoft C++test Parasoft .TEST University of Calgary (by the author) [7] A small library book loan systemTests were automated using Unix command-line scripts Queen's University [6] A small-scale office suite called TerpOffice (developed at UMD) JUnitUniversity of Maryland [5] A 49-LOC C programProteumIM-2.0 (mutation tool) www.google.comJMeter A hypothetical library checkout systemTelcordia AR Greenhouse Efficient Test Case Generation Service (AETG) A 73-LOC C programxSuds (coverage analysis tool) A simple Triangle classJUnitPurdue University [4] A VoIP application developed by students in a previous course JUnit, CPPUnitUniversity of Waterloo [3] Presentation tool, part of the Open Office suiteNone (students apparently used the black-box techniques manually). Florida Institute of Technology [2] A simple hypothetical landing gear safety system, and an Automatic Teller Machine JUnitCarleton University [1] SUT(s)Testing tool(s)Testing course at …
  • 8. Different Alternatives currently in use and Observations Various open-source or commercial systems (one SUT per student), e.g.: RUBiS SIP Communicator Jarnal: a PDF annotation program jEdit Apache Tomcat JFreeChart Various open-source or commercial tools (one tool per student), e.g.: IBM Rational Functional Tester IBM Rational Manual Tester Parasoft Jtest Parasoft C++test Parasoft .TEST University of Calgary (by the author) [7] A small library book loan systemTests were automated using Unix command-line scripts Queen's University [6] A small-scale office suite called TerpOffice (developed at UMD) JUnitUniversity of Maryland [5] A 49-LOC C programProteumIM-2.0 (mutation tool) www.google.comJMeter A hypothetical library checkout systemTelcordia AR Greenhouse Efficient Test Case Generation Service (AETG) A 73-LOC C programxSuds (coverage analysis tool) A simple Triangle classJUnitPurdue University [4] A VoIP application developed by students in a previous course JUnit, CPPUnitUniversity of Waterloo [3] Presentation tool, part of the Open Office suiteNone (students apparently used the black-box techniques manually). Florida Institute of Technology [2] A simple hypothetical landing gear safety system, and an Automatic Teller Machine JUnitCarleton University [1] SUT(s)Testing tool(s)Testing course at …
  • 9. Different Alternatives currently in use and Observations Various open-source or commercial systems (one SUT per student), e.g.: RUBiS SIP Communicator Jarnal: a PDF annotation program jEdit Apache Tomcat JFreeChart Various open-source or commercial tools (one tool per student), e.g.: IBM Rational Functional Tester IBM Rational Manual Tester Parasoft Jtest Parasoft C++test Parasoft .TEST University of Calgary (by the author) [7] A small library book loan systemTests were automated using Unix command-line scripts Queen's University [6] A small-scale office suite called TerpOffice (developed at UMD) JUnitUniversity of Maryland [5] A 49-LOC C programProteumIM-2.0 (mutation tool) www.google.comJMeter A hypothetical library checkout systemTelcordia AR Greenhouse Efficient Test Case Generation Service (AETG) A 73-LOC C programxSuds (coverage analysis tool) A simple Triangle classJUnitPurdue University [4] A VoIP application developed by students in a previous course JUnit, CPPUnitUniversity of Waterloo [3] Presentation tool, part of the Open Office suiteNone (students apparently used the black-box techniques manually). Florida Institute of Technology [2] A simple hypothetical landing gear safety system, and an Automatic Teller Machine JUnitCarleton University [1] SUT(s)Testing tool(s)Testing course at …
  • 10. Different Alternatives currently in use and Observations Various open-source or commercial systems (one SUT per student), e.g.: RUBiS SIP Communicator Jarnal: a PDF annotation program jEdit Apache Tomcat JFreeChart Various open-source or commercial tools (one tool per student), e.g.: IBM Rational Functional Tester IBM Rational Manual Tester Parasoft Jtest Parasoft C++test Parasoft .TEST University of Calgary (by the author) [7] A small library book loan systemTests were automated using Unix command-line scripts Queen's University [6] A small-scale office suite called TerpOffice (developed at UMD) JUnitUniversity of Maryland [5] A 49-LOC C programProteumIM-2.0 (mutation tool) www.google.comJMeter A hypothetical library checkout systemTelcordia AR Greenhouse Efficient Test Case Generation Service (AETG) A 73-LOC C programxSuds (coverage analysis tool) A simple Triangle classJUnitPurdue University [4] A VoIP application developed by students in a previous course JUnit, CPPUnitUniversity of Waterloo [3] Presentation tool, part of the Open Office suiteNone (students apparently used the black-box techniques manually). Florida Institute of Technology [2] A simple hypothetical landing gear safety system, and an Automatic Teller Machine JUnitCarleton University [1] SUT(s)Testing tool(s)Testing course at …
  • 11. Different Alternatives currently in use and Observations Various open-source or commercial systems (one SUT per student), e.g.: RUBiS SIP Communicator Jarnal: a PDF annotation program jEdit Apache Tomcat JFreeChart Various open-source or commercial tools (one tool per student), e.g.: IBM Rational Functional Tester IBM Rational Manual Tester Parasoft Jtest Parasoft C++test Parasoft .TEST University of Calgary (by the author) [7] A small library book loan systemTests were automated using Unix command-line scripts Queen's University [6] A small-scale office suite called TerpOffice (developed at UMD) JUnitUniversity of Maryland [5] A 49-LOC C programProteumIM-2.0 (mutation tool) www.google.comJMeter A hypothetical library checkout systemTelcordia AR Greenhouse Efficient Test Case Generation Service (AETG) A 73-LOC C programxSuds (coverage analysis tool) A simple Triangle classJUnitPurdue University [4] A VoIP application developed by students in a previous course JUnit, CPPUnitUniversity of Waterloo [3] Presentation tool, part of the Open Office suiteNone (students apparently used the black-box techniques manually). Florida Institute of Technology [2] A simple hypothetical landing gear safety system, and an Automatic Teller Machine JUnitCarleton University [1] SUT(s)Testing tool(s)Testing course at …
  • 12. Tradeoff - Pros and Cons of Different Choices • Some of the courses use small-scale (“toy”) or hypothetical SUTs in their exercises. • For example, in the Purdue University’s course, students learn code coverage through a lab exercise by using a less-known tool called xSuds to test a 73-LOC C program (SUT). • It seems to the author that this scale of SUTs will not prepare students well enough for real-world industrial settings. • In the Queen's university’s testing course, students automated their test cases using ad-hoc Unix command-line scripts. • According to the project guidelines in that course, it seems that it is possible and better to use industry-standard testing frameworks (e.g., JUnit) instead of ad-hoc Unix scripts.
  • 13. Tradeoff - Pros and Cons of Different Choices • Also some of the courses (such as Purdue’s) often use simple research- oriented testing tools, e.g., ProteumIM-2.0 (a mutation tool). • Perhaps, it is a better idea to adopt and use more recent and powerful tools instead, e.g., MuClipse a mutation testing plug-in for the Eclipse IDE.
  • 14. Breadth of Tools Used • The courses at Purdue University and the University of Calgary (taught by myself) seem to be more comprehensive than the other five courses. • Purdue’s course involves the students in working with five different testing tools, each for a specific type of testing, e.g., JMeter for performance testing, and xSuds for coverage analysis. Various open-source or commercial systems (one SUT per student), e.g.: RUBiS SIP Communicator Jarnal: a PDF annotation program jEdit Apache Tomcat JFreeChart Various open-source or commercial tools (one tool per student), e.g.: IBM Rational Functional Tester IBM Rational Manual Tester Parasoft Jtest Parasoft C++test Parasoft .TEST University of Calgary (by the author) [7] A 49-LOC C programProteumIM-2.0 (mutation tool) www.google.comJMeter A hypothetical library checkout systemTelcordia AR Greenhouse Efficient Test Case Generation Service (AETG) A 73-LOC C programxSuds (coverage analysis tool) A simple Triangle classJUnitPurdue University [4] SUT(s)Testing tool(s)Testing course at …
  • 15. The approach (choices) taken in the University of Calgary’s Course • Was first offered in Winter 2008. • Unlike the other six courses which are undergraduate-level, this course is graduate-level • 9 students + 3 people from the SW industry • Each student spent the entire three-month term to install, learn and use a commercial testing tool to test a real-world large-scale SUT (details next…). • Students handed in three comprehensive reports in three milestones of the project: – 1: proposal – 2: interim report – 3: final report
  • 16. The University of Calgary’s Course - Goals • The goal was to incorporate both breadth and depth in students’ learning • Depth in learning each tool in detail by each student • Breadth in learning by having project presentations and in-depth discussions, tool comparisons, after each presentation among students
  • 17. The University of Calgary’s Course: The Testing Tools and Systems Under Test (SUTs) Various open-source or commercial systems (one SUT per student), e.g.: jEdit Apache Tomcat JFreeChart RUBiS: a web-based ebay-like application written in J2EE A large-scale commercial web application for an oil & gas government agency. Jarnal: a PDF annotation program BlogEngine.NET SIP Communicator: an open-source java- based internet phone protocol A commercial USB camera control system for robot vision Various open-source or commercial tools (one tool per student), e.g.: IBM Rational Functional Tester IBM Rational Manual Tester IBM Rational AppScan IBM Rational Test RealTime IBM Rational Performance Tester IBM Rational TestManager Parasoft Jtest Parasoft C++test Parasoft .TEST JUnit CUnit NUnit JMeter Fitnesse Acceptance Testing Framework SUTsTesting tools
  • 18. The University of Calgary’s Course - Results • Formal course evaluations have confirmed the course success in using realistic exercises for its project. • For example, 92% of students believed that they “learned a lot in this course”. • 91% believed the “support materials and tools were helpful”. • Only after one offering, the course has become very popular in the department • There is already lots of student and industry interest in taking it in Winter 2009 term. (it is in full capacity this term)
  • 19. Summary and Recommendations: Choosing the right SUTs and Testing Tools • It is hard to generalize the findings and observations… • But the author would recommended that testing educators should align the choices of SUTs and tools with the following criteria… – the ultimate goal of the particular course at hand, e.g., learning goals and the end product (the type of testers) needed at the end of the course – the type and background of the students – and also the time and resources available in the given course, e.g., are tool licenses free, or are their costs within budget?
  • 20. Summary and Recommendations: Choosing the right SUTs and Testing Tools • For example, since the author’s course was graduate-level, • and that Calgary has a very active testing industry, • and it was expected that the students were going to work in the industry soon after the course, • also, the students in that course were senior and had some prior knowledge/experience with testing fundamentals. • Thus, it was decided to use industry-strength testing tools and large-scale SUTs in his course.
  • 21. Further work is needed • To provide better and more precise recommendations on the subject, • systematic surveys and comparative analysis of testing tools for the purpose of education on different types of testing tools. • There are surveys such as the one in [10], but it is only a survey of one specific type of testing tools (only coverage measurement) and, also, • that survey does not compare the tools from the educational standpoint and the type of learning outcomes gained using those tools. • Last but not least, more experience and systematic studies by testing educators on the choice of tools and SUTs to draw generalizable conclusions and external validity on the subject.
  • 22. Thanks for your attention. Q/A period… (LAWST / WTST style!)