SlideShare uma empresa Scribd logo
1 de 35
+
Software Testing and
Game TestingAn Introduction to Software Testing in Games
+
Introduction
 This presentation gives an overview introduction to software
testing in general, and how game testing adds additional
complexity to the equation
 This is just an introduction, but there are links at the end of the
presentation to facilitate further learning
 Game QA adds an additional layer on top of this, but that will
not be covered here
+
What is Testing?
“Testing is an empirical, technical investigation conducted to
provide stakeholders with information about the quality of the
product or service under test”
Black Box Software Testing: Foundations course [1]
+
What is a tester?
 Someone with test competence that performs test activities
Software Developer
Software Developer in
Test
Embedded Tester
Acceptance Tester
System Tester
???
Title does not
matter. If you have
test competence
and you perform
test activities you
are (but you may
have many roles)
a tester
+
Quality?
“Quality is value to some person” [12]
Quality means different things to different
people. But in the end, when someone says
they want high quality – what they want is
something that is valuable to them
+
Different Layers of Tests [13]
 Unit Test
 Integration Test
 Component Interface Test
 System Test
 Acceptance Test
Which layers you choose to
separate different types of tests
does not really matter – but it
can be good to have some kind
of separation of different types
of tests to facilitate
understanding and separation
of work
+
The Boxes of Testing [13]
Black Box Gray Box White Box
No insight into the code and
underlying architecture
Some insight into the code
and underlying architecture
Full understanding of the code
and the software architecture
+
Test Techniques [21]
 People-based techniques (User, Alpha, Beta, Pair, Bug Bash, Expert)
 Who does the testing?
 Coverage-based techniques (Boundary testing, Equivalence class analysis)
 What gets tested?
 Problem-based techniques (Input-, Output-, Data- and Computation constraints)
 Why are you testing?
 Activity-based techniques (Scripted, Exploratory, Smoke, Regression)
 How are you testing?
 Evaluation-based techniques (Comparison with specification, Comparison with saved data)
 How do you know if a test is passed or failed?
+
Risk-based Testing [14]
1. Make a prioritized list of risks.
2. Perform testing that explores each risk.
3. As risks evaporate and new ones emerge, adjust your test
effort to stay focused on the current crop.
+
Risk Input
 There are many things that could have impact on perceived risk
level
 Recent fixes
 Code coverage in changed components
 Code complexity in changed components
 Historical data
 Known dependencies for changed components
 Known bugs in changed components
 Etc.
+
Exploratory Testing
"a style of software testing that emphasizes the personal
freedom and responsibility of the individual tester to continually
optimize the quality of his/her work by treating test-related
learning, test design, test execution, and test result interpretation
as mutually supportive activities that run in parallel throughout the
project.”
Cem Kaner With few exceptions designing manual test cases
upfront is not an efficient way of testing, but
exploratory testing requires a more mature test
process and organization
+
Agile Testing Quadrants [22]
+
Test Automation
Understand the
Software System
Plan your Test Design
Create manual tests
Create automated tests
Ensure Software System
Testability
Designing effective and efficient
automated tests is a science in itself –
never underestimate the time and
cost of setting up a large scale,
continuous integration system
It is time, and not cost, that you will
reduce with automation
Never try to automate tests that are
better performed manually
+
Testing Checklist: ISO 25010 [11]
Functional suitability Reliability Operability
Performance efficiency Compatibility Maintainability
Security
Transferability
It can be good to have a checklist of different categories of test that
you need to cover. This ISO standard is one example, but there are
many others [20].
+
Combined Engineering [23]
+
Test-driven Development [18]
 Test Driven Development is a software development process,
not a test process
 “First the developer writes an (initially failing) automated test
case that defines a desired improvement or new function, then
produces the minimum amount of code to pass that test, and
finally refactors the new code to acceptable standards.”
+
Crowdsourced Testing [19]
 “Crowdsourced testing is an emerging trend in software testing
which exploits the benefits, effectiveness, and efficiency of
crowdsourcing and the cloud platform. It differs from traditional
testing methods in that the testing is carried out by a number of
different testers from different places, and not by hired
consultants and professionals. The software is put to test under
diverse realistic platforms which makes it more reliable, cost-
effective, fast, and bug-free.”
+
Testing: There is so much to learn
Black Box Software
Testing Foundation [1]
Test Automation [2]
Context-Driven Testing
[3]
Testing at Google &
Microsoft [4][5]
ISO29119[6] Testing & Checking [7]
+
Software Testing vs. Game Testing
General Software
Testing
Game Testing
+
What makes Game Testing Unique
Fun Factor Testing[8] Balance Testing[8]
Game Level/World
Testing[8]
AI Testing[8][10]
Multiplayer/Network
Testing[8]
Audio Testing[8]
Physics Testing[8] Realism Testing[9] Modification API Testing
+
There are many similarities
 Software is software whether it is a game or not
 Software testing is an engineering discipline whether it is games,
applications or other types of software
 Functionality, performance, stability, compatibility, localization, etc.
are mostly the same, but with different focus depending on context
 A game tester should have the same general knowledge base as
any software tester, but with a special focus on what makes
games unique
+
Fun Factor Testing
 User experience and usability are valid testing areas for all
types of software
 What differs games from other types of software is that it has to
be fun – it is entertainment and it needs to have a fun factor
that other types of software may not require
 To be able to work with Fun Factor Testing requires a large
domain knowledge of games and what makes them fun
+
Balance Testing
 Balancing different options is something that is much more
prevalent in games compared to other software
 Balancing different character options such as race, class, and
attribute choices
 Balancing weapons, boosters, equipment, and other paraphernalia
 Balancing levels
 Balancing difficulty
+
Game Level/World Testing
 Somewhat unique to games is the number of instances in which assets
are used
 An application may use a feature in one place, while a game might use it in 20
different levels or parts of the world
 This means that you need to test that the asset is used correctly in all these
instances
 Especially 3D worlds require a unique approach
 Stuck/Sticky spots
 Invisible walls
 Map holes
 Missing geometry
+
AI Testing
 Facing a computer controlled opponent is common in games,
but less common in other types of software
 Testing the different attributes and of the AI, and how it reacts in
different situations is critical in many games
 How well it mimics human behavior
 Survival instinct – such as looking for cover in a fire fight
 Hunting state – not waiting to react to the player’s actions, but
proactively performing actions
 Infighting – how it reacts to other AI
 Pathfinding
+
Multiplayer / Network Testing
 Playing against multiple other opponents is quite common in games, and
even though other software also communicates with other users and
servers through different mediums, it is often to a lesser extent, and less
sensitive
 Many things can go wrong in multiplayer
 Failed connections
 Dropped connections
 Lag
 Invisible players
 Scoring errors
 Unaccepted invitations
+
Audio Testing
 Obviously almost all software has some kind of audio
 However in games it is often more detrimental to the user experience if something
goes wrong
 Often much more complex in games, with many sounds playing simultaneously
 Many things can go wrong
 Audio drop
 Skipping
 Distortion
 Missing sound effects
 Volume level
+
Physics Testing
 Some games have physics engines, which affect both
gameplay and animations
 It requires a specific skill to spot physics bugs
 Breakable geometry must be tested to assure that it is
destroyed in a way consistent with the desirable physics
 Dynamic behavior such as boxes moving when you walk into
them is another example of physics in action
+
Realism Testing
 This type of testing is also related to how the game managed to mimic the
real world in a desirable way
 Is the car handling like a real car?
 Does the weapon feel like a real weapon?
 Running animations and jumping must have the right look and feel
 This type of testing requires a lot of domain knowledge – to know if an
airplane is realistic enough, you must know about airplanes
+
Modification API Testing
 If the game allows for user to create their own mods, and it is a
competitive game like an mmo this requires a unique approach
 Open APIs are common in software, but competitive games
add a dimension of not allowing mod users to gain unfair
advantages or being able to exploit the game using their mods
 Imagining how the APIs will be used is critical to understanding
if there will be future problems or not
+
Player Types [9]
 You can categorize gamers in a slightly different way than
users of other applications and technology in general
Killer Achiever Explorer Socializer
Casual Gamer
Hardcore Gamer
Button Masher
Customizer
Exploiter
+
Prioritization based on Player Types
 How you prioritize your tests could be influenced by which
player types you are aiming the game for
 If you want to please all types, then making sure you have run
sufficient tests in each category will go a long way when it
comes to reducing critical bugs
+
Combinatorial Testing [9]
 Of course combinatorial testing is nothing unique to games, but
when looking at a large, sprawling 3D game world, one can
imagine the size of the combinatorial explosion
 A larger game world, a large amount of actors, and a large
amount of actions for these actors to perform, all results in a
combinatorial nightmare
+
Conclusion
 Software testing in general, and game testing in particular, are
extremely complex activities
 It takes a lot of time and effort
 It requires a lot of experience and knowledge
 It needs to be handled very delicately to not produce waste
 It is necessary if you want to release a game that is valuable to
some person(s)
+
References
[1] BBST
http://www.testingeducation.org/BBST/
[2] The A Word
https://leanpub.com/TheAWord
[3] Context-Driven Testing
http://context-driven-testing.com/
[4] How Google Tests Software
http://www.amazon.com/Google-Tests-Software-James-Whittaker/dp/0321803027
[5] How We Test Software at Microsoft
http://www.amazon.com/How-We-Test-Software-Microsoft/dp/0735624259/
[6] ISO29119
http://www.softwaretestingstandard.org/
[7] Testing & Checking
http://www.satisfice.com/blog/archives/856
[8] Game Development Essentials: Game QA & Testing
http://www.amazon.com/Game-Development-Essentials-QA-Testing/dp/1435439473
[9] Game Testing: All on One
http://www.amazon.com/Game-Testing-Second-Charles-Schultz/dp/1936420163/
[10] Artificial Intelligence (Video Games)
http://en.wikipedia.org/wiki/Artificial_intelligence_(video_games)
[11] ISO 25010
http://www.iso.org/iso/catalogue_detail.htm?csnumber=35733
[12] Gerald Weinberg
http://secretsofconsulting.blogspot.se/
[13] Software Testing
http://en.wikipedia.org/wiki/Software_testing
[14] Heuristic Risk-based Testing
http://www.satisfice.com/articles/hrbt.pdf
[15] Test-driven Development
http://en.wikipedia.org/wiki/Test-driven_development
[19] Crowdsourced Testing
http://en.wikipedia.org/wiki/Crowdsourced_testing
[20] Test Heuristics Cheat Sheet
http://testobsessed.com/wp-content/uploads/2011/04/testheuristicscheatsheetv1.pdf
[21] Lessons Learned in Software Testing
http://www.testingeducation.org/BBST/testdesign/KanerBachPettichord_Lessons_Learned_in_SW_testingCh3-1.pdf
[22] Agile Testing Quadrants
http://www.developsense.com/presentations/2014-06-Dublin-RSTAgileTesting.pdf
[23] To Combine … or not
http://angryweasel.com/blog/to-combine-or-not/

Mais conteúdo relacionado

Mais procurados

Game Development Step by Step
Game Development Step by StepGame Development Step by Step
Game Development Step by StepBayu Sembada
 
Types of software testing
Types of software testingTypes of software testing
Types of software testingTestbytes
 
Unreal Engine (For Creating Games) Presentation
Unreal Engine (For Creating Games) PresentationUnreal Engine (For Creating Games) Presentation
Unreal Engine (For Creating Games) PresentationNitin Sharma
 
What is Sanity Testing? Edureka
What is Sanity Testing? EdurekaWhat is Sanity Testing? Edureka
What is Sanity Testing? EdurekaEdureka!
 
Final year project presentation
Final year project presentationFinal year project presentation
Final year project presentationSulemanAliMalik
 
Mobile Game Development in Unity
Mobile Game Development in UnityMobile Game Development in Unity
Mobile Game Development in UnityHakan Saglam
 
Video Games and Copyright laws
Video Games and Copyright lawsVideo Games and Copyright laws
Video Games and Copyright lawsmissstevenson01
 
Game UX Design and Evaluation
Game UX Design and EvaluationGame UX Design and Evaluation
Game UX Design and EvaluationGena Drahun
 
Introduction to Game Development and the Game Industry
Introduction to Game Development and the Game IndustryIntroduction to Game Development and the Game Industry
Introduction to Game Development and the Game IndustryNataly Eliyahu
 
Workflow of Creating Game UX/UI Design
Workflow of Creating Game UX/UI DesignWorkflow of Creating Game UX/UI Design
Workflow of Creating Game UX/UI DesignDevGAMM Conference
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application TestingSWAAM Tech
 
10 page pitch for game design
10 page pitch for game design10 page pitch for game design
10 page pitch for game designTom Carter
 
UI/UX presentation by Roshan Karunarathna
UI/UX presentation by Roshan KarunarathnaUI/UX presentation by Roshan Karunarathna
UI/UX presentation by Roshan KarunarathnaRoshan Karunarathna
 
Game development
Game developmentGame development
Game developmentRareCoders
 
Introduction to game development
Introduction to game developmentIntroduction to game development
Introduction to game developmentGaetano Bonofiglio
 

Mais procurados (20)

Game Development Step by Step
Game Development Step by StepGame Development Step by Step
Game Development Step by Step
 
Types of software testing
Types of software testingTypes of software testing
Types of software testing
 
Unreal Engine (For Creating Games) Presentation
Unreal Engine (For Creating Games) PresentationUnreal Engine (For Creating Games) Presentation
Unreal Engine (For Creating Games) Presentation
 
What is Sanity Testing? Edureka
What is Sanity Testing? EdurekaWhat is Sanity Testing? Edureka
What is Sanity Testing? Edureka
 
Introduction to Game Development
Introduction to Game DevelopmentIntroduction to Game Development
Introduction to Game Development
 
Final year project presentation
Final year project presentationFinal year project presentation
Final year project presentation
 
Mobile Game Development in Unity
Mobile Game Development in UnityMobile Game Development in Unity
Mobile Game Development in Unity
 
Introduction to Game Development.pdf
Introduction to Game Development.pdfIntroduction to Game Development.pdf
Introduction to Game Development.pdf
 
Testing
TestingTesting
Testing
 
Software testing
Software testingSoftware testing
Software testing
 
Video Games and Copyright laws
Video Games and Copyright lawsVideo Games and Copyright laws
Video Games and Copyright laws
 
Game UX Design and Evaluation
Game UX Design and EvaluationGame UX Design and Evaluation
Game UX Design and Evaluation
 
Introduction to Game Development and the Game Industry
Introduction to Game Development and the Game IndustryIntroduction to Game Development and the Game Industry
Introduction to Game Development and the Game Industry
 
Workflow of Creating Game UX/UI Design
Workflow of Creating Game UX/UI DesignWorkflow of Creating Game UX/UI Design
Workflow of Creating Game UX/UI Design
 
Hangman game
Hangman gameHangman game
Hangman game
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application Testing
 
10 page pitch for game design
10 page pitch for game design10 page pitch for game design
10 page pitch for game design
 
UI/UX presentation by Roshan Karunarathna
UI/UX presentation by Roshan KarunarathnaUI/UX presentation by Roshan Karunarathna
UI/UX presentation by Roshan Karunarathna
 
Game development
Game developmentGame development
Game development
 
Introduction to game development
Introduction to game developmentIntroduction to game development
Introduction to game development
 

Destaque

Top 10 games tester interview questions and answers
Top 10 games tester interview questions and answersTop 10 games tester interview questions and answers
Top 10 games tester interview questions and answerscaitlinkelly433
 
Best Practices in Mobile Game Testing
Best Practices in Mobile Game TestingBest Practices in Mobile Game Testing
Best Practices in Mobile Game TestingBitbar
 
Mobile game testing report
Mobile game testing reportMobile game testing report
Mobile game testing reportQA Madness
 
Introduce Game Testing And QA
Introduce Game Testing And QAIntroduce Game Testing And QA
Introduce Game Testing And QAPham Anh Tuan
 
Effective Testing of Free-to-Play Games
Effective Testing of Free-to-Play GamesEffective Testing of Free-to-Play Games
Effective Testing of Free-to-Play Gamesemily_greer
 
Game testing inGenuity'12
Game testing inGenuity'12Game testing inGenuity'12
Game testing inGenuity'12Indium Software
 
Video Game Usability Testing - Answering the Why
Video Game Usability Testing - Answering the WhyVideo Game Usability Testing - Answering the Why
Video Game Usability Testing - Answering the Whyaustinupa
 
Importance of software quality assurance
Importance of software quality assuranceImportance of software quality assurance
Importance of software quality assuranceMaveric Systems
 
Different Software Testing Levels for Detecting Errors
Different Software Testing Levels for Detecting ErrorsDifferent Software Testing Levels for Detecting Errors
Different Software Testing Levels for Detecting ErrorsWaqas Tariq
 
Mindmaps - A killer way to increase your test coverage
Mindmaps - A killer way to increase your test coverageMindmaps - A killer way to increase your test coverage
Mindmaps - A killer way to increase your test coveragePrashant Hegde
 
Component interface
Component interfaceComponent interface
Component interfaceJAYAARC
 
Car Game - Final Year Project
Car Game - Final Year ProjectCar Game - Final Year Project
Car Game - Final Year ProjectVivek Naskar
 

Destaque (16)

Top 10 games tester interview questions and answers
Top 10 games tester interview questions and answersTop 10 games tester interview questions and answers
Top 10 games tester interview questions and answers
 
Best Practices in Mobile Game Testing
Best Practices in Mobile Game TestingBest Practices in Mobile Game Testing
Best Practices in Mobile Game Testing
 
Agile testing games
Agile testing gamesAgile testing games
Agile testing games
 
Mobile game testing report
Mobile game testing reportMobile game testing report
Mobile game testing report
 
Introduce Game Testing And QA
Introduce Game Testing And QAIntroduce Game Testing And QA
Introduce Game Testing And QA
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
 
Effective Testing of Free-to-Play Games
Effective Testing of Free-to-Play GamesEffective Testing of Free-to-Play Games
Effective Testing of Free-to-Play Games
 
Game testing inGenuity'12
Game testing inGenuity'12Game testing inGenuity'12
Game testing inGenuity'12
 
Video Game Usability Testing - Answering the Why
Video Game Usability Testing - Answering the WhyVideo Game Usability Testing - Answering the Why
Video Game Usability Testing - Answering the Why
 
Importance of software quality assurance
Importance of software quality assuranceImportance of software quality assurance
Importance of software quality assurance
 
Different Software Testing Levels for Detecting Errors
Different Software Testing Levels for Detecting ErrorsDifferent Software Testing Levels for Detecting Errors
Different Software Testing Levels for Detecting Errors
 
Levels of testing
Levels of testingLevels of testing
Levels of testing
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Mindmaps - A killer way to increase your test coverage
Mindmaps - A killer way to increase your test coverageMindmaps - A killer way to increase your test coverage
Mindmaps - A killer way to increase your test coverage
 
Component interface
Component interfaceComponent interface
Component interface
 
Car Game - Final Year Project
Car Game - Final Year ProjectCar Game - Final Year Project
Car Game - Final Year Project
 

Semelhante a Software testing and game testing

Types of Software Testing: Definition, Objectives and Advantages
Types of Software Testing: Definition, Objectives and AdvantagesTypes of Software Testing: Definition, Objectives and Advantages
Types of Software Testing: Definition, Objectives and AdvantagesSimform
 
Software testing
Software testingSoftware testing
Software testingmkn3009
 
Different Methodologies For Testing Web Application Testing
Different Methodologies For Testing Web Application TestingDifferent Methodologies For Testing Web Application Testing
Different Methodologies For Testing Web Application TestingRachel Davis
 
Software techniques
Software techniquesSoftware techniques
Software techniqueshome
 
Software Testing (1).pptx
Software Testing (1).pptxSoftware Testing (1).pptx
Software Testing (1).pptxSarowarSuman
 
Crowd Testing Framework : Mobile Application Testing
Crowd Testing Framework : Mobile Application TestingCrowd Testing Framework : Mobile Application Testing
Crowd Testing Framework : Mobile Application Testingmomoahmedabad
 
SE - Lecture 8 - Software Testing State Diagram.pptx
SE - Lecture 8 - Software Testing  State Diagram.pptxSE - Lecture 8 - Software Testing  State Diagram.pptx
SE - Lecture 8 - Software Testing State Diagram.pptxTangZhiSiang
 
Testing fundamentals
Testing fundamentalsTesting fundamentals
Testing fundamentalsAbdul Basit
 
softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1FAIZALSAIYED
 
Feb 2013Lesson 38 Software Acquisition Development
Feb 2013Lesson 38 Software Acquisition DevelopmentFeb 2013Lesson 38 Software Acquisition Development
Feb 2013Lesson 38 Software Acquisition DevelopmentBarb Tillich
 
Manual testing visonia
Manual testing   visoniaManual testing   visonia
Manual testing visoniaVisoniaTechlab
 
An introduction to Software Testing and Test Management
An introduction to Software Testing and Test ManagementAn introduction to Software Testing and Test Management
An introduction to Software Testing and Test ManagementAnuraj S.L
 
Agile Testing Pasadena JUG Aug2009
Agile Testing Pasadena JUG Aug2009Agile Testing Pasadena JUG Aug2009
Agile Testing Pasadena JUG Aug2009Grig Gheorghiu
 

Semelhante a Software testing and game testing (20)

Software testing
Software testing   Software testing
Software testing
 
Types of Software Testing: Definition, Objectives and Advantages
Types of Software Testing: Definition, Objectives and AdvantagesTypes of Software Testing: Definition, Objectives and Advantages
Types of Software Testing: Definition, Objectives and Advantages
 
Software testing
Software testingSoftware testing
Software testing
 
Different Methodologies For Testing Web Application Testing
Different Methodologies For Testing Web Application TestingDifferent Methodologies For Testing Web Application Testing
Different Methodologies For Testing Web Application Testing
 
Testing concepts
Testing conceptsTesting concepts
Testing concepts
 
Software techniques
Software techniquesSoftware techniques
Software techniques
 
Software Testing (1).pptx
Software Testing (1).pptxSoftware Testing (1).pptx
Software Testing (1).pptx
 
Software Testing 5/5
Software Testing 5/5Software Testing 5/5
Software Testing 5/5
 
Crowd Testing Framework : Mobile Application Testing
Crowd Testing Framework : Mobile Application TestingCrowd Testing Framework : Mobile Application Testing
Crowd Testing Framework : Mobile Application Testing
 
SE - Lecture 8 - Software Testing State Diagram.pptx
SE - Lecture 8 - Software Testing  State Diagram.pptxSE - Lecture 8 - Software Testing  State Diagram.pptx
SE - Lecture 8 - Software Testing State Diagram.pptx
 
Slides chapters 13-14
Slides chapters 13-14Slides chapters 13-14
Slides chapters 13-14
 
Testing fundamentals
Testing fundamentalsTesting fundamentals
Testing fundamentals
 
Software testing
Software testingSoftware testing
Software testing
 
Software testing
Software testingSoftware testing
Software testing
 
softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1
 
Feb 2013Lesson 38 Software Acquisition Development
Feb 2013Lesson 38 Software Acquisition DevelopmentFeb 2013Lesson 38 Software Acquisition Development
Feb 2013Lesson 38 Software Acquisition Development
 
Manual testing visonia
Manual testing   visoniaManual testing   visonia
Manual testing visonia
 
Software test life cycle
Software test life cycleSoftware test life cycle
Software test life cycle
 
An introduction to Software Testing and Test Management
An introduction to Software Testing and Test ManagementAn introduction to Software Testing and Test Management
An introduction to Software Testing and Test Management
 
Agile Testing Pasadena JUG Aug2009
Agile Testing Pasadena JUG Aug2009Agile Testing Pasadena JUG Aug2009
Agile Testing Pasadena JUG Aug2009
 

Mais de Johan Hoberg

Approaches to unraveling a complex test problem
Approaches to unraveling a complex test problemApproaches to unraveling a complex test problem
Approaches to unraveling a complex test problemJohan Hoberg
 
A business case for a modern QA organization
A business case for a modern QA organizationA business case for a modern QA organization
A business case for a modern QA organizationJohan Hoberg
 
Signing off on Quality
Signing off on QualitySigning off on Quality
Signing off on QualityJohan Hoberg
 
Quality Information Coverage - A QI Concept
Quality Information Coverage - A QI ConceptQuality Information Coverage - A QI Concept
Quality Information Coverage - A QI ConceptJohan Hoberg
 
The Bug Backlog - An Evergrowing Mountain
The Bug Backlog - An Evergrowing MountainThe Bug Backlog - An Evergrowing Mountain
The Bug Backlog - An Evergrowing MountainJohan Hoberg
 
Quality Intelligence: Transparency & Visibility
Quality Intelligence: Transparency & VisibilityQuality Intelligence: Transparency & Visibility
Quality Intelligence: Transparency & VisibilityJohan Hoberg
 
Building a QA Mindset
Building a QA Mindset Building a QA Mindset
Building a QA Mindset Johan Hoberg
 
Building High Quality Software
Building High Quality Software Building High Quality Software
Building High Quality Software Johan Hoberg
 
Testit 2017 - Exploratory Testing for Everyone
Testit 2017 - Exploratory Testing for EveryoneTestit 2017 - Exploratory Testing for Everyone
Testit 2017 - Exploratory Testing for EveryoneJohan Hoberg
 
Don’t celebrate failure. Don’t celebrate success. Celebrate commitment, owner...
Don’t celebrate failure. Don’t celebrate success. Celebrate commitment, owner...Don’t celebrate failure. Don’t celebrate success. Celebrate commitment, owner...
Don’t celebrate failure. Don’t celebrate success. Celebrate commitment, owner...Johan Hoberg
 
Moving from scripted regression testing to exploratory testing
Moving from scripted regression testing to exploratory testingMoving from scripted regression testing to exploratory testing
Moving from scripted regression testing to exploratory testingJohan Hoberg
 
Building High Quality Software
Building High Quality SoftwareBuilding High Quality Software
Building High Quality SoftwareJohan Hoberg
 
Quality, Testing & Agile Methodologies
Quality, Testing & Agile MethodologiesQuality, Testing & Agile Methodologies
Quality, Testing & Agile MethodologiesJohan Hoberg
 
Defining Test Competence
Defining Test CompetenceDefining Test Competence
Defining Test CompetenceJohan Hoberg
 
Why all deadlines are bad for quality
Why all deadlines are bad for qualityWhy all deadlines are bad for quality
Why all deadlines are bad for qualityJohan Hoberg
 
Do we really need game testers?
Do we really need game testers?Do we really need game testers?
Do we really need game testers?Johan Hoberg
 
Hardware/Software Integration Testing
Hardware/Software Integration TestingHardware/Software Integration Testing
Hardware/Software Integration TestingJohan Hoberg
 

Mais de Johan Hoberg (20)

Approaches to unraveling a complex test problem
Approaches to unraveling a complex test problemApproaches to unraveling a complex test problem
Approaches to unraveling a complex test problem
 
A business case for a modern QA organization
A business case for a modern QA organizationA business case for a modern QA organization
A business case for a modern QA organization
 
Signing off on Quality
Signing off on QualitySigning off on Quality
Signing off on Quality
 
Quality Information Coverage - A QI Concept
Quality Information Coverage - A QI ConceptQuality Information Coverage - A QI Concept
Quality Information Coverage - A QI Concept
 
The Bug Backlog - An Evergrowing Mountain
The Bug Backlog - An Evergrowing MountainThe Bug Backlog - An Evergrowing Mountain
The Bug Backlog - An Evergrowing Mountain
 
Quality Intelligence: Transparency & Visibility
Quality Intelligence: Transparency & VisibilityQuality Intelligence: Transparency & Visibility
Quality Intelligence: Transparency & Visibility
 
Building a QA Mindset
Building a QA Mindset Building a QA Mindset
Building a QA Mindset
 
What is QI?
What is QI?What is QI?
What is QI?
 
Building High Quality Software
Building High Quality Software Building High Quality Software
Building High Quality Software
 
Testit 2017 - Exploratory Testing for Everyone
Testit 2017 - Exploratory Testing for EveryoneTestit 2017 - Exploratory Testing for Everyone
Testit 2017 - Exploratory Testing for Everyone
 
Don’t celebrate failure. Don’t celebrate success. Celebrate commitment, owner...
Don’t celebrate failure. Don’t celebrate success. Celebrate commitment, owner...Don’t celebrate failure. Don’t celebrate success. Celebrate commitment, owner...
Don’t celebrate failure. Don’t celebrate success. Celebrate commitment, owner...
 
Moving from scripted regression testing to exploratory testing
Moving from scripted regression testing to exploratory testingMoving from scripted regression testing to exploratory testing
Moving from scripted regression testing to exploratory testing
 
Building High Quality Software
Building High Quality SoftwareBuilding High Quality Software
Building High Quality Software
 
Quality, Testing & Agile Methodologies
Quality, Testing & Agile MethodologiesQuality, Testing & Agile Methodologies
Quality, Testing & Agile Methodologies
 
QI, not QA
QI, not QAQI, not QA
QI, not QA
 
Defining Test Competence
Defining Test CompetenceDefining Test Competence
Defining Test Competence
 
Why all deadlines are bad for quality
Why all deadlines are bad for qualityWhy all deadlines are bad for quality
Why all deadlines are bad for quality
 
QI, not QA
QI, not QAQI, not QA
QI, not QA
 
Do we really need game testers?
Do we really need game testers?Do we really need game testers?
Do we really need game testers?
 
Hardware/Software Integration Testing
Hardware/Software Integration TestingHardware/Software Integration Testing
Hardware/Software Integration Testing
 

Último

IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024Mark Billinghurst
 
8251 universal synchronous asynchronous receiver transmitter
8251 universal synchronous asynchronous receiver transmitter8251 universal synchronous asynchronous receiver transmitter
8251 universal synchronous asynchronous receiver transmitterShivangiSharma879191
 
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncWhy does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncssuser2ae721
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfAsst.prof M.Gokilavani
 
Introduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECHIntroduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECHC Sai Kiran
 
Electronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdfElectronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdfme23b1001
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girlsssuser7cb4ff
 
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)dollysharma2066
 
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfAsst.prof M.Gokilavani
 
Correctly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleCorrectly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleAlluxio, Inc.
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort servicejennyeacort
 
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor CatchersTechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catcherssdickerson1
 
Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxk795866
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
computer application and construction management
computer application and construction managementcomputer application and construction management
computer application and construction managementMariconPadriquez1
 

Último (20)

🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024
 
8251 universal synchronous asynchronous receiver transmitter
8251 universal synchronous asynchronous receiver transmitter8251 universal synchronous asynchronous receiver transmitter
8251 universal synchronous asynchronous receiver transmitter
 
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncWhy does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
 
Introduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECHIntroduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECH
 
Electronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdfElectronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdf
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girls
 
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
 
Design and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdfDesign and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdf
 
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
 
Correctly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleCorrectly Loading Incremental Data at Scale
Correctly Loading Incremental Data at Scale
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
 
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptxExploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
 
young call girls in Green Park🔝 9953056974 🔝 escort Service
young call girls in Green Park🔝 9953056974 🔝 escort Serviceyoung call girls in Green Park🔝 9953056974 🔝 escort Service
young call girls in Green Park🔝 9953056974 🔝 escort Service
 
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor CatchersTechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
 
Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptx
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
computer application and construction management
computer application and construction managementcomputer application and construction management
computer application and construction management
 

Software testing and game testing

  • 1. + Software Testing and Game TestingAn Introduction to Software Testing in Games
  • 2. + Introduction  This presentation gives an overview introduction to software testing in general, and how game testing adds additional complexity to the equation  This is just an introduction, but there are links at the end of the presentation to facilitate further learning  Game QA adds an additional layer on top of this, but that will not be covered here
  • 3. + What is Testing? “Testing is an empirical, technical investigation conducted to provide stakeholders with information about the quality of the product or service under test” Black Box Software Testing: Foundations course [1]
  • 4. + What is a tester?  Someone with test competence that performs test activities Software Developer Software Developer in Test Embedded Tester Acceptance Tester System Tester ??? Title does not matter. If you have test competence and you perform test activities you are (but you may have many roles) a tester
  • 5. + Quality? “Quality is value to some person” [12] Quality means different things to different people. But in the end, when someone says they want high quality – what they want is something that is valuable to them
  • 6. + Different Layers of Tests [13]  Unit Test  Integration Test  Component Interface Test  System Test  Acceptance Test Which layers you choose to separate different types of tests does not really matter – but it can be good to have some kind of separation of different types of tests to facilitate understanding and separation of work
  • 7. + The Boxes of Testing [13] Black Box Gray Box White Box No insight into the code and underlying architecture Some insight into the code and underlying architecture Full understanding of the code and the software architecture
  • 8. + Test Techniques [21]  People-based techniques (User, Alpha, Beta, Pair, Bug Bash, Expert)  Who does the testing?  Coverage-based techniques (Boundary testing, Equivalence class analysis)  What gets tested?  Problem-based techniques (Input-, Output-, Data- and Computation constraints)  Why are you testing?  Activity-based techniques (Scripted, Exploratory, Smoke, Regression)  How are you testing?  Evaluation-based techniques (Comparison with specification, Comparison with saved data)  How do you know if a test is passed or failed?
  • 9. + Risk-based Testing [14] 1. Make a prioritized list of risks. 2. Perform testing that explores each risk. 3. As risks evaporate and new ones emerge, adjust your test effort to stay focused on the current crop.
  • 10. + Risk Input  There are many things that could have impact on perceived risk level  Recent fixes  Code coverage in changed components  Code complexity in changed components  Historical data  Known dependencies for changed components  Known bugs in changed components  Etc.
  • 11. + Exploratory Testing "a style of software testing that emphasizes the personal freedom and responsibility of the individual tester to continually optimize the quality of his/her work by treating test-related learning, test design, test execution, and test result interpretation as mutually supportive activities that run in parallel throughout the project.” Cem Kaner With few exceptions designing manual test cases upfront is not an efficient way of testing, but exploratory testing requires a more mature test process and organization
  • 13. + Test Automation Understand the Software System Plan your Test Design Create manual tests Create automated tests Ensure Software System Testability Designing effective and efficient automated tests is a science in itself – never underestimate the time and cost of setting up a large scale, continuous integration system It is time, and not cost, that you will reduce with automation Never try to automate tests that are better performed manually
  • 14. + Testing Checklist: ISO 25010 [11] Functional suitability Reliability Operability Performance efficiency Compatibility Maintainability Security Transferability It can be good to have a checklist of different categories of test that you need to cover. This ISO standard is one example, but there are many others [20].
  • 16. + Test-driven Development [18]  Test Driven Development is a software development process, not a test process  “First the developer writes an (initially failing) automated test case that defines a desired improvement or new function, then produces the minimum amount of code to pass that test, and finally refactors the new code to acceptable standards.”
  • 17. + Crowdsourced Testing [19]  “Crowdsourced testing is an emerging trend in software testing which exploits the benefits, effectiveness, and efficiency of crowdsourcing and the cloud platform. It differs from traditional testing methods in that the testing is carried out by a number of different testers from different places, and not by hired consultants and professionals. The software is put to test under diverse realistic platforms which makes it more reliable, cost- effective, fast, and bug-free.”
  • 18. + Testing: There is so much to learn Black Box Software Testing Foundation [1] Test Automation [2] Context-Driven Testing [3] Testing at Google & Microsoft [4][5] ISO29119[6] Testing & Checking [7]
  • 19. + Software Testing vs. Game Testing General Software Testing Game Testing
  • 20. + What makes Game Testing Unique Fun Factor Testing[8] Balance Testing[8] Game Level/World Testing[8] AI Testing[8][10] Multiplayer/Network Testing[8] Audio Testing[8] Physics Testing[8] Realism Testing[9] Modification API Testing
  • 21. + There are many similarities  Software is software whether it is a game or not  Software testing is an engineering discipline whether it is games, applications or other types of software  Functionality, performance, stability, compatibility, localization, etc. are mostly the same, but with different focus depending on context  A game tester should have the same general knowledge base as any software tester, but with a special focus on what makes games unique
  • 22. + Fun Factor Testing  User experience and usability are valid testing areas for all types of software  What differs games from other types of software is that it has to be fun – it is entertainment and it needs to have a fun factor that other types of software may not require  To be able to work with Fun Factor Testing requires a large domain knowledge of games and what makes them fun
  • 23. + Balance Testing  Balancing different options is something that is much more prevalent in games compared to other software  Balancing different character options such as race, class, and attribute choices  Balancing weapons, boosters, equipment, and other paraphernalia  Balancing levels  Balancing difficulty
  • 24. + Game Level/World Testing  Somewhat unique to games is the number of instances in which assets are used  An application may use a feature in one place, while a game might use it in 20 different levels or parts of the world  This means that you need to test that the asset is used correctly in all these instances  Especially 3D worlds require a unique approach  Stuck/Sticky spots  Invisible walls  Map holes  Missing geometry
  • 25. + AI Testing  Facing a computer controlled opponent is common in games, but less common in other types of software  Testing the different attributes and of the AI, and how it reacts in different situations is critical in many games  How well it mimics human behavior  Survival instinct – such as looking for cover in a fire fight  Hunting state – not waiting to react to the player’s actions, but proactively performing actions  Infighting – how it reacts to other AI  Pathfinding
  • 26. + Multiplayer / Network Testing  Playing against multiple other opponents is quite common in games, and even though other software also communicates with other users and servers through different mediums, it is often to a lesser extent, and less sensitive  Many things can go wrong in multiplayer  Failed connections  Dropped connections  Lag  Invisible players  Scoring errors  Unaccepted invitations
  • 27. + Audio Testing  Obviously almost all software has some kind of audio  However in games it is often more detrimental to the user experience if something goes wrong  Often much more complex in games, with many sounds playing simultaneously  Many things can go wrong  Audio drop  Skipping  Distortion  Missing sound effects  Volume level
  • 28. + Physics Testing  Some games have physics engines, which affect both gameplay and animations  It requires a specific skill to spot physics bugs  Breakable geometry must be tested to assure that it is destroyed in a way consistent with the desirable physics  Dynamic behavior such as boxes moving when you walk into them is another example of physics in action
  • 29. + Realism Testing  This type of testing is also related to how the game managed to mimic the real world in a desirable way  Is the car handling like a real car?  Does the weapon feel like a real weapon?  Running animations and jumping must have the right look and feel  This type of testing requires a lot of domain knowledge – to know if an airplane is realistic enough, you must know about airplanes
  • 30. + Modification API Testing  If the game allows for user to create their own mods, and it is a competitive game like an mmo this requires a unique approach  Open APIs are common in software, but competitive games add a dimension of not allowing mod users to gain unfair advantages or being able to exploit the game using their mods  Imagining how the APIs will be used is critical to understanding if there will be future problems or not
  • 31. + Player Types [9]  You can categorize gamers in a slightly different way than users of other applications and technology in general Killer Achiever Explorer Socializer Casual Gamer Hardcore Gamer Button Masher Customizer Exploiter
  • 32. + Prioritization based on Player Types  How you prioritize your tests could be influenced by which player types you are aiming the game for  If you want to please all types, then making sure you have run sufficient tests in each category will go a long way when it comes to reducing critical bugs
  • 33. + Combinatorial Testing [9]  Of course combinatorial testing is nothing unique to games, but when looking at a large, sprawling 3D game world, one can imagine the size of the combinatorial explosion  A larger game world, a large amount of actors, and a large amount of actions for these actors to perform, all results in a combinatorial nightmare
  • 34. + Conclusion  Software testing in general, and game testing in particular, are extremely complex activities  It takes a lot of time and effort  It requires a lot of experience and knowledge  It needs to be handled very delicately to not produce waste  It is necessary if you want to release a game that is valuable to some person(s)
  • 35. + References [1] BBST http://www.testingeducation.org/BBST/ [2] The A Word https://leanpub.com/TheAWord [3] Context-Driven Testing http://context-driven-testing.com/ [4] How Google Tests Software http://www.amazon.com/Google-Tests-Software-James-Whittaker/dp/0321803027 [5] How We Test Software at Microsoft http://www.amazon.com/How-We-Test-Software-Microsoft/dp/0735624259/ [6] ISO29119 http://www.softwaretestingstandard.org/ [7] Testing & Checking http://www.satisfice.com/blog/archives/856 [8] Game Development Essentials: Game QA & Testing http://www.amazon.com/Game-Development-Essentials-QA-Testing/dp/1435439473 [9] Game Testing: All on One http://www.amazon.com/Game-Testing-Second-Charles-Schultz/dp/1936420163/ [10] Artificial Intelligence (Video Games) http://en.wikipedia.org/wiki/Artificial_intelligence_(video_games) [11] ISO 25010 http://www.iso.org/iso/catalogue_detail.htm?csnumber=35733 [12] Gerald Weinberg http://secretsofconsulting.blogspot.se/ [13] Software Testing http://en.wikipedia.org/wiki/Software_testing [14] Heuristic Risk-based Testing http://www.satisfice.com/articles/hrbt.pdf [15] Test-driven Development http://en.wikipedia.org/wiki/Test-driven_development [19] Crowdsourced Testing http://en.wikipedia.org/wiki/Crowdsourced_testing [20] Test Heuristics Cheat Sheet http://testobsessed.com/wp-content/uploads/2011/04/testheuristicscheatsheetv1.pdf [21] Lessons Learned in Software Testing http://www.testingeducation.org/BBST/testdesign/KanerBachPettichord_Lessons_Learned_in_SW_testingCh3-1.pdf [22] Agile Testing Quadrants http://www.developsense.com/presentations/2014-06-Dublin-RSTAgileTesting.pdf [23] To Combine … or not http://angryweasel.com/blog/to-combine-or-not/

Notas do Editor

  1. Functional suitability - The degree to which the product provides functions that meet stated and implied needs when the product is used under specified conditions Suitability Accuracy Interoperability Security Compliance Reliability - The degree to which a system or component performs specified functions under specified conditions for a specified period of time. Maturity Fault Tolerance Recoverability Compliance Operability - The degree to which the product has attributes that enable it to be understood, learned, used and attractive to the user, when used under specified conditions Appropriateness Recognisability Ease of use Learnability Attractiveness Technical accessibility Compliance Performance efficiency - The performance relative to the amount of resources used under stated conditions Time Behaviour Resource Utilisation Compliance Security - The degree of protection of information and data so that unauthorized persons or systems cannot read or modify them and authorized persons or systems are not denied access to them Confidentiality Integrity Non-repudiation Accountability Authenticity Compliance Compatibility - The degree to which two or more systems or components can exchange information and/or perform their required functions while sharing the same hardware or software environment Replaceability Co-existence Interoperability Compliance Maintainability - The degree of effectiveness and efficiency with which the product can be modified Modularity Reusability Analyzability Changeability Modification stability Testability Compliance Transferability - The degree to which a system or component can be effectively and efficiently transferred from one hardware, software or other operational or usage environment to another Portability Adaptability Installability Compliance