SlideShare una empresa de Scribd logo
1 de 58
Descargar para leer sin conexión
Black Ops Testing 
Workshop 
Agile Testing Days 
Tony Bruce 
Steve Green 
Alan Richardson
January 2015 Workshop, London 
www.BlackOpsTesting.com
Introduction 
● 3 * 5 minute lightning talks 
● We expect you to test stuff 
● We will coach & ask questions as you test 
● We may periodically debrief
What you are about to test 
● Redmine 
○ www.redmine.org 
● Project Planning App 
○ GUI, Rest API, Feeds, DB, Web Server
Alan’s Bit at the start 
● Model, Observe, Interrogate, Reflect, 
Manipulate 
● Tools help me observe and manipulate 
● Note Taking
A model of how Alan tests 
● Model 
○ What I think I understand. Different viewpoints. 
● Observe 
○ at different points to corroborate/invalidate model 
● Reflect 
○ find gaps, lack of depth, derive intent 
● Interrogate 
○ Focussed, deep dive observation with intent 
● Manipulate 
○ Hypothesis exploration and “how we do stuff”
Tools help me... 
… Observe and Manipulate
Browser
Risks
Tools
...extend the model
Note Taking 
● Why: 
○ Questions, Ideas, Risks, etc. 
● What: 
○ ToDos, Issues, Observations, 
Notes, etc. 
● When: 
○ Timestamps, sequential order 
● Where: 
○ urls, environment, users, etc. 
● How: 
○ commands, methods, 
tools used, etc. 
Evidence: 
● logs, screenshots, output, files, 
etc.
Tony’s bit 
● Test ideas 
● Tools 
● Information & Intelligence
Explore for test ideas 
Prep 
- Notes 
- Summary 
- Important bits 
- Ideas 
- Comments 
- Questions 
- Thoughts 
- Six Honest Men 
"I Keep Six Honest 
Serving Men ..." 
I KEEP six honest serving-men 
(They taught me all I knew); 
Their names are What and Why and 
When And How and Where and 
Who. 
…….. Rudyard Kipling
Tools 
Browser 
- Add-ons 
- Extensions 
- Developer tools 
- 
Others 
- Accessibility 
- Security 
- Debugging 
-
Bob Stewart 
Leadership Under Pressure: Tactics from the Front Line
Information
Steve’s bit 
What are we going to test? 
● What’s new? 
● What’s changed? 
● What’s important? 
● What are known buggy areas? 
● What has not been tested previously?
What are we going to test?
What might be difficult?
What might be difficult? 
● How can we create enough data? 
● How can we test time-related features? 
● How do we know if the right thing 
happened?
Lightning Talk Debrief 
Extras? 
Questions? 
Comments?
Collaboration Rules 
● Don’t load test the app, we are all using it 
○ If you accidentally bring it down through a clever then that’s fine, 
● Don’t change data you didn’t create
Where is the app? 
● You can install it locally if you want 
○ http://redmine.org 
● You can get an install or VM from bitnami 
○ https://bitnami.com/stack/redmine 
● You can use the redmine demo 
○ http://demo.redmine.org/ 
● You can use our server 
○ ….
Where is the app? 
● Links removed as 
only valid at the 
time we conducted 
the workshop
Testing Phase 1 
● Consider what we said 
● Test the app in new ways, take notes, try 
new tools 
● Black Ops Team will mingle - do ask for help 
● We will debrief prior to the break
“...no plan of operations extends 
with any certainty beyond the first 
contact with the main hostile force.” 
Field Marshall Helmuth Carl Bernard Graf von Moltke, 1871
Test the **** out of Redmine
Hints... 
Are you monitoring the HTTP traffic? 
Have you changed the DOM? 
Cookies? 
Internationalisation? 
Logged issues? 
...
Debrief 
Observations 
Questions
Break (30 mins) 
Feel free to carry on testing if you want
Testing Phase 2 
● You tell us
Interrupt 1 
Structure your data to make testing easier. 
● Unique values (where possible) 
● Sequenced
Interrupt 2 
Testing maxlength and truncation.
Interrupt 2 
Testing maxlength and truncation. 
0005x0010x0015x0020x0025x0030x0035x004 
0x0045x0050x0055x0060x0065x0070x0075x0 
080x0085x0090x0095x0100x0105x0110x0115 
x0120x0125x0130x0135x0140x0145x0150x01 
55x0160x0165x0170x0175x0180x0185x0190x 
0195x0200x0205x0210x0215x0220x0225x023
Interrupt 2 
Testing maxlength and truncation. 
http://bit.ly/1B7gQlx
Interrupt 2a 
● We have a broken app - can you get in? 
● Links removed as only valid at the time of 
the workshop
Interrupt 3 
Recording data flow.
Interrupt 4 
Can we break the CSV, Atom or PDF exports? 
What might do that?
Debrief Phase
Bugs we found 1 
● The PDF does not contain the Start Date, 
Estimated Time, % Done or File Description 
for the attachments that are included in the 
New Issue form. 
● The PDF does not contain the Target 
Version and Spent Time values that are 
included in the View Issue form.
Bugs we found 2 
The Atom feed from the View Issue page has 
no content when it is viewed immediately after 
creating an issue. It did have content after 
adding a quote to the issue.
Bugs we found 2
Bugs we found 3 
The File Description for an image is not saved if 
too many characters are entered in the New 
Issue form. We did not investigate where the 
boundary is.
Bugs we found 4 
The PDF that is generated from the Gantt page 
always shows the default zoom level regardless 
of the zoom level that has been selected. 
The URL of the PDF link contains a ‘zoom’ 
parameter (which does nothing). Changing the 
‘months’ parameter has the desired effect.
Bugs we found 5 
Some non-Roman characters are displayed 
correctly on all HTML pages but they are not 
displayed in PDFs.
Bugs we found 6 
Some non-Roman characters are not displayed 
correctly in CSVs.
Bugs we found 7 
You’re able to delete all user accounts, 
including admin. 
There is only 1 admin (as far as I could see) 
Tell us how….
Bugs we found 7 cont. 
Record browser traffic while deleting a account. 
Find the delete POST
Bugs we found 8 
"Your account has been activated. You can 
now log in. " 
System says I am already "logged in as eris" 
and I am on my account page 
Minor issue about wording
Bugs we found 9 
Error message about emails already in use 
when registering - privacy concern 
“Email has already been taken”
Bugs we found 10 
Maximum length of email is 60 chars but needs 
to accept 254
Bugs we found 11 
Can use an invalid language when registering a 
user.
Bugs we found 12 
Truncation on project identifier with no error or 
warning message 
i.e. create project with 255 char identifier - 
truncated to 100
Bugs we found 13 
When creating a project, the ID and name are 
populated via javascript but if I change the 
name then the identifier is not kept in sync.
Bugs we found 14 
Can create an invalid enabled_modules entry 
by submitting a module name which does not 
exist when creating a project
Bugs we found 15 
Change url to have csv or pdf views 
System should respond differently to csv and 
pdf on projects when GUI request rather than 
an API request 406 is better for API, 404 with 
html or 406 with html payload might be better
Rathole 1 - Password 
Alan thought there was a bug with password 
lengths, and storing in a varchar 40, since 
password can be very long. 
But, a ‘hash’ is stored, not the password, this 
took time to discover.

Más contenido relacionado

La actualidad más candente

Practical Test Automation Deep Dive
Practical Test Automation Deep DivePractical Test Automation Deep Dive
Practical Test Automation Deep DiveAlan Richardson
 
TestIstanbul May 2013 Keynote Experiences With Exploratory Testing
TestIstanbul May 2013 Keynote Experiences With Exploratory TestingTestIstanbul May 2013 Keynote Experiences With Exploratory Testing
TestIstanbul May 2013 Keynote Experiences With Exploratory TestingAlan Richardson
 
Risk Mitigation Using Exploratory and Technical Testing - QASymphony Webinar ...
Risk Mitigation Using Exploratory and Technical Testing - QASymphony Webinar ...Risk Mitigation Using Exploratory and Technical Testing - QASymphony Webinar ...
Risk Mitigation Using Exploratory and Technical Testing - QASymphony Webinar ...Alan Richardson
 
Automating Pragmatically - Testival 20190604
Automating Pragmatically - Testival 20190604Automating Pragmatically - Testival 20190604
Automating Pragmatically - Testival 20190604Alan Richardson
 
Test Bash Netherlands Alan Richardson "How to misuse 'Automation' for testing...
Test Bash Netherlands Alan Richardson "How to misuse 'Automation' for testing...Test Bash Netherlands Alan Richardson "How to misuse 'Automation' for testing...
Test Bash Netherlands Alan Richardson "How to misuse 'Automation' for testing...Alan Richardson
 
Secrets and Mysteries of Automated Execution Keynote slides
Secrets and Mysteries of Automated Execution Keynote slidesSecrets and Mysteries of Automated Execution Keynote slides
Secrets and Mysteries of Automated Execution Keynote slidesAlan Richardson
 
The Evil Tester's Guide to HTTP proxies Tutorial
The Evil Tester's Guide to HTTP proxies TutorialThe Evil Tester's Guide to HTTP proxies Tutorial
The Evil Tester's Guide to HTTP proxies TutorialAlan Richardson
 
Automating Tactically vs Strategically SauceCon 2020
Automating Tactically vs Strategically SauceCon 2020Automating Tactically vs Strategically SauceCon 2020
Automating Tactically vs Strategically SauceCon 2020Alan Richardson
 
Evil testers guide to technical testing
Evil testers guide to technical testingEvil testers guide to technical testing
Evil testers guide to technical testingAlan Richardson
 
Effective Software Testing for Modern Software Development
Effective Software Testing for Modern Software DevelopmentEffective Software Testing for Modern Software Development
Effective Software Testing for Modern Software DevelopmentAlan Richardson
 
Odinstar 2017 - Real World Automating to Support Testing
Odinstar 2017 - Real World Automating to Support TestingOdinstar 2017 - Real World Automating to Support Testing
Odinstar 2017 - Real World Automating to Support TestingAlan Richardson
 
How To Test With Agility
How To Test With AgilityHow To Test With Agility
How To Test With AgilityAlan Richardson
 
Technical and Testing Challenges: Using the "Protect The Square" Game
Technical and Testing Challenges: Using the "Protect The Square" GameTechnical and Testing Challenges: Using the "Protect The Square" Game
Technical and Testing Challenges: Using the "Protect The Square" GameAlan Richardson
 
Joy of Coding Conference 2019 slides - Alan Richardson
Joy of Coding Conference 2019 slides - Alan RichardsonJoy of Coding Conference 2019 slides - Alan Richardson
Joy of Coding Conference 2019 slides - Alan RichardsonAlan Richardson
 
Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects
Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile ProjectsAgile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects
Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile ProjectsAlan Richardson
 
Selenium Clinic Eurostar 2012 WebDriver Tutorial
Selenium Clinic Eurostar 2012 WebDriver TutorialSelenium Clinic Eurostar 2012 WebDriver Tutorial
Selenium Clinic Eurostar 2012 WebDriver TutorialAlan Richardson
 
Push Functional Testing Further
Push Functional Testing FurtherPush Functional Testing Further
Push Functional Testing FurtherAlan Richardson
 
Real World Selenium Testing
Real World Selenium TestingReal World Selenium Testing
Real World Selenium TestingMary Jo Sminkey
 
Your Automated Execution Does Not Have to be Flaky
Your Automated Execution Does Not Have to be FlakyYour Automated Execution Does Not Have to be Flaky
Your Automated Execution Does Not Have to be FlakyAlan Richardson
 

La actualidad más candente (20)

Practical Test Automation Deep Dive
Practical Test Automation Deep DivePractical Test Automation Deep Dive
Practical Test Automation Deep Dive
 
TestIstanbul May 2013 Keynote Experiences With Exploratory Testing
TestIstanbul May 2013 Keynote Experiences With Exploratory TestingTestIstanbul May 2013 Keynote Experiences With Exploratory Testing
TestIstanbul May 2013 Keynote Experiences With Exploratory Testing
 
Risk Mitigation Using Exploratory and Technical Testing - QASymphony Webinar ...
Risk Mitigation Using Exploratory and Technical Testing - QASymphony Webinar ...Risk Mitigation Using Exploratory and Technical Testing - QASymphony Webinar ...
Risk Mitigation Using Exploratory and Technical Testing - QASymphony Webinar ...
 
Automating Pragmatically - Testival 20190604
Automating Pragmatically - Testival 20190604Automating Pragmatically - Testival 20190604
Automating Pragmatically - Testival 20190604
 
Test Bash Netherlands Alan Richardson "How to misuse 'Automation' for testing...
Test Bash Netherlands Alan Richardson "How to misuse 'Automation' for testing...Test Bash Netherlands Alan Richardson "How to misuse 'Automation' for testing...
Test Bash Netherlands Alan Richardson "How to misuse 'Automation' for testing...
 
Secrets and Mysteries of Automated Execution Keynote slides
Secrets and Mysteries of Automated Execution Keynote slidesSecrets and Mysteries of Automated Execution Keynote slides
Secrets and Mysteries of Automated Execution Keynote slides
 
Devfest 2019-slides
Devfest 2019-slidesDevfest 2019-slides
Devfest 2019-slides
 
The Evil Tester's Guide to HTTP proxies Tutorial
The Evil Tester's Guide to HTTP proxies TutorialThe Evil Tester's Guide to HTTP proxies Tutorial
The Evil Tester's Guide to HTTP proxies Tutorial
 
Automating Tactically vs Strategically SauceCon 2020
Automating Tactically vs Strategically SauceCon 2020Automating Tactically vs Strategically SauceCon 2020
Automating Tactically vs Strategically SauceCon 2020
 
Evil testers guide to technical testing
Evil testers guide to technical testingEvil testers guide to technical testing
Evil testers guide to technical testing
 
Effective Software Testing for Modern Software Development
Effective Software Testing for Modern Software DevelopmentEffective Software Testing for Modern Software Development
Effective Software Testing for Modern Software Development
 
Odinstar 2017 - Real World Automating to Support Testing
Odinstar 2017 - Real World Automating to Support TestingOdinstar 2017 - Real World Automating to Support Testing
Odinstar 2017 - Real World Automating to Support Testing
 
How To Test With Agility
How To Test With AgilityHow To Test With Agility
How To Test With Agility
 
Technical and Testing Challenges: Using the "Protect The Square" Game
Technical and Testing Challenges: Using the "Protect The Square" GameTechnical and Testing Challenges: Using the "Protect The Square" Game
Technical and Testing Challenges: Using the "Protect The Square" Game
 
Joy of Coding Conference 2019 slides - Alan Richardson
Joy of Coding Conference 2019 slides - Alan RichardsonJoy of Coding Conference 2019 slides - Alan Richardson
Joy of Coding Conference 2019 slides - Alan Richardson
 
Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects
Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile ProjectsAgile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects
Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects
 
Selenium Clinic Eurostar 2012 WebDriver Tutorial
Selenium Clinic Eurostar 2012 WebDriver TutorialSelenium Clinic Eurostar 2012 WebDriver Tutorial
Selenium Clinic Eurostar 2012 WebDriver Tutorial
 
Push Functional Testing Further
Push Functional Testing FurtherPush Functional Testing Further
Push Functional Testing Further
 
Real World Selenium Testing
Real World Selenium TestingReal World Selenium Testing
Real World Selenium Testing
 
Your Automated Execution Does Not Have to be Flaky
Your Automated Execution Does Not Have to be FlakyYour Automated Execution Does Not Have to be Flaky
Your Automated Execution Does Not Have to be Flaky
 

Similar a Black Ops Testing Workshop Bugs in Redmine Project Management App

Demise of test scripts rise of test ideas
Demise of test scripts rise of test ideasDemise of test scripts rise of test ideas
Demise of test scripts rise of test ideasRichard Robinson
 
Never show a design you haven't tested
Never show a design you haven't testedNever show a design you haven't tested
Never show a design you haven't testedIda Aalen
 
Become a Better Developer with Debugging Techniques for Drupal (and more!)
Become a Better Developer with Debugging Techniques for Drupal (and more!)Become a Better Developer with Debugging Techniques for Drupal (and more!)
Become a Better Developer with Debugging Techniques for Drupal (and more!)Acquia
 
Validating Big Data Jobs—Stopping Failures Before Production on Apache Spark...
 Validating Big Data Jobs—Stopping Failures Before Production on Apache Spark... Validating Big Data Jobs—Stopping Failures Before Production on Apache Spark...
Validating Big Data Jobs—Stopping Failures Before Production on Apache Spark...Databricks
 
User Experience Basics for Product Management
User Experience Basics for Product ManagementUser Experience Basics for Product Management
User Experience Basics for Product ManagementRoger Hart
 
30% faster coder on-boarding when you have a code cookbook
30% faster coder on-boarding when you have a code cookbook30% faster coder on-boarding when you have a code cookbook
30% faster coder on-boarding when you have a code cookbookGabriel Paunescu 🤖
 
5 reasons you'll love to hate Agile Development
5 reasons you'll love to hate Agile Development5 reasons you'll love to hate Agile Development
5 reasons you'll love to hate Agile DevelopmentArin Sime
 
May 2021 Spark Testing ... or how to farm reputation on StackOverflow
May 2021 Spark Testing ... or how to farm reputation on StackOverflowMay 2021 Spark Testing ... or how to farm reputation on StackOverflow
May 2021 Spark Testing ... or how to farm reputation on StackOverflowAdam Doyle
 
Services, tools & practices for a software house
Services, tools & practices for a software houseServices, tools & practices for a software house
Services, tools & practices for a software houseParis Apostolopoulos
 
Lessons Learned When Automating
Lessons Learned When AutomatingLessons Learned When Automating
Lessons Learned When AutomatingAlan Richardson
 
Testing & should i do it
Testing & should i do itTesting & should i do it
Testing & should i do itMartin Sykora
 
Hacker vs company, Cloud Cyber Security Automated with Kubernetes - Demi Ben-...
Hacker vs company, Cloud Cyber Security Automated with Kubernetes - Demi Ben-...Hacker vs company, Cloud Cyber Security Automated with Kubernetes - Demi Ben-...
Hacker vs company, Cloud Cyber Security Automated with Kubernetes - Demi Ben-...Demi Ben-Ari
 
Devops, Secops, Opsec, DevSec *ops *.* ?
Devops, Secops, Opsec, DevSec *ops *.* ?Devops, Secops, Opsec, DevSec *ops *.* ?
Devops, Secops, Opsec, DevSec *ops *.* ?Kris Buytaert
 
Best Practices in Software Development
Best Practices in Software DevelopmentBest Practices in Software Development
Best Practices in Software DevelopmentAndré Pitombeira
 
Product Design at Wiredcraft - May 2016 UI/UX Meetup Shanghai
Product Design at Wiredcraft - May 2016 UI/UX Meetup ShanghaiProduct Design at Wiredcraft - May 2016 UI/UX Meetup Shanghai
Product Design at Wiredcraft - May 2016 UI/UX Meetup ShanghaiWiredcraft
 
Atd advanced topicsworkshop
Atd advanced topicsworkshopAtd advanced topicsworkshop
Atd advanced topicsworkshoplisacrispin
 
Developing Better Software
Developing Better SoftwareDeveloping Better Software
Developing Better SoftwareHean Hong Leong
 

Similar a Black Ops Testing Workshop Bugs in Redmine Project Management App (20)

Demise of test scripts rise of test ideas
Demise of test scripts rise of test ideasDemise of test scripts rise of test ideas
Demise of test scripts rise of test ideas
 
Usable Software Design
Usable Software DesignUsable Software Design
Usable Software Design
 
Never show a design you haven't tested
Never show a design you haven't testedNever show a design you haven't tested
Never show a design you haven't tested
 
Become a Better Developer with Debugging Techniques for Drupal (and more!)
Become a Better Developer with Debugging Techniques for Drupal (and more!)Become a Better Developer with Debugging Techniques for Drupal (and more!)
Become a Better Developer with Debugging Techniques for Drupal (and more!)
 
Validating Big Data Jobs—Stopping Failures Before Production on Apache Spark...
 Validating Big Data Jobs—Stopping Failures Before Production on Apache Spark... Validating Big Data Jobs—Stopping Failures Before Production on Apache Spark...
Validating Big Data Jobs—Stopping Failures Before Production on Apache Spark...
 
Lug
LugLug
Lug
 
User Experience Basics for Product Management
User Experience Basics for Product ManagementUser Experience Basics for Product Management
User Experience Basics for Product Management
 
30% faster coder on-boarding when you have a code cookbook
30% faster coder on-boarding when you have a code cookbook30% faster coder on-boarding when you have a code cookbook
30% faster coder on-boarding when you have a code cookbook
 
Git Makes Me Angry Inside
Git Makes Me Angry InsideGit Makes Me Angry Inside
Git Makes Me Angry Inside
 
5 reasons you'll love to hate Agile Development
5 reasons you'll love to hate Agile Development5 reasons you'll love to hate Agile Development
5 reasons you'll love to hate Agile Development
 
May 2021 Spark Testing ... or how to farm reputation on StackOverflow
May 2021 Spark Testing ... or how to farm reputation on StackOverflowMay 2021 Spark Testing ... or how to farm reputation on StackOverflow
May 2021 Spark Testing ... or how to farm reputation on StackOverflow
 
Services, tools & practices for a software house
Services, tools & practices for a software houseServices, tools & practices for a software house
Services, tools & practices for a software house
 
Lessons Learned When Automating
Lessons Learned When AutomatingLessons Learned When Automating
Lessons Learned When Automating
 
Testing & should i do it
Testing & should i do itTesting & should i do it
Testing & should i do it
 
Hacker vs company, Cloud Cyber Security Automated with Kubernetes - Demi Ben-...
Hacker vs company, Cloud Cyber Security Automated with Kubernetes - Demi Ben-...Hacker vs company, Cloud Cyber Security Automated with Kubernetes - Demi Ben-...
Hacker vs company, Cloud Cyber Security Automated with Kubernetes - Demi Ben-...
 
Devops, Secops, Opsec, DevSec *ops *.* ?
Devops, Secops, Opsec, DevSec *ops *.* ?Devops, Secops, Opsec, DevSec *ops *.* ?
Devops, Secops, Opsec, DevSec *ops *.* ?
 
Best Practices in Software Development
Best Practices in Software DevelopmentBest Practices in Software Development
Best Practices in Software Development
 
Product Design at Wiredcraft - May 2016 UI/UX Meetup Shanghai
Product Design at Wiredcraft - May 2016 UI/UX Meetup ShanghaiProduct Design at Wiredcraft - May 2016 UI/UX Meetup Shanghai
Product Design at Wiredcraft - May 2016 UI/UX Meetup Shanghai
 
Atd advanced topicsworkshop
Atd advanced topicsworkshopAtd advanced topicsworkshop
Atd advanced topicsworkshop
 
Developing Better Software
Developing Better SoftwareDeveloping Better Software
Developing Better Software
 

Más de Alan Richardson

Open source tools - Test Management Summit - 2009
Open source tools - Test Management Summit - 2009Open source tools - Test Management Summit - 2009
Open source tools - Test Management Summit - 2009Alan Richardson
 
The Future of Testing Webinar
The Future of Testing WebinarThe Future of Testing Webinar
The Future of Testing WebinarAlan Richardson
 
Programming katas for Software Testers - CounterStrings
Programming katas for Software Testers - CounterStringsProgramming katas for Software Testers - CounterStrings
Programming katas for Software Testers - CounterStringsAlan Richardson
 
About Consultant Alan Richardson Compendium Developments Evil Tester
About Consultant Alan Richardson Compendium Developments Evil TesterAbout Consultant Alan Richardson Compendium Developments Evil Tester
About Consultant Alan Richardson Compendium Developments Evil TesterAlan Richardson
 
Automating and Testing a REST API
Automating and Testing a REST APIAutomating and Testing a REST API
Automating and Testing a REST APIAlan Richardson
 
TDD - Test Driven Development - Java JUnit FizzBuzz
TDD - Test Driven Development - Java JUnit FizzBuzzTDD - Test Driven Development - Java JUnit FizzBuzz
TDD - Test Driven Development - Java JUnit FizzBuzzAlan Richardson
 
What is Testability vs Automatability? How to improve your Software Testing.
What is Testability vs Automatability? How to improve your Software Testing.What is Testability vs Automatability? How to improve your Software Testing.
What is Testability vs Automatability? How to improve your Software Testing.Alan Richardson
 
What is Agile Testing? A MindMap
What is Agile Testing? A MindMapWhat is Agile Testing? A MindMap
What is Agile Testing? A MindMapAlan Richardson
 
Evil Tester's Guide to Agile Testing
Evil Tester's Guide to Agile TestingEvil Tester's Guide to Agile Testing
Evil Tester's Guide to Agile TestingAlan Richardson
 
The Evil Tester Show - Episode 001 Halloween 2017
The Evil Tester Show - Episode 001 Halloween 2017The Evil Tester Show - Episode 001 Halloween 2017
The Evil Tester Show - Episode 001 Halloween 2017Alan Richardson
 
What is Regression Testing?
What is Regression Testing?What is Regression Testing?
What is Regression Testing?Alan Richardson
 
Simple ways to add and work with a `.jar` file in your local maven setup
Simple ways to add and work with a `.jar` file in your local maven setupSimple ways to add and work with a `.jar` file in your local maven setup
Simple ways to add and work with a `.jar` file in your local maven setupAlan Richardson
 
Re-thinking Test Automation and Test Process Modelling (in pictures)
Re-thinking Test Automation and Test Process Modelling (in pictures)Re-thinking Test Automation and Test Process Modelling (in pictures)
Re-thinking Test Automation and Test Process Modelling (in pictures)Alan Richardson
 
Automating Strategically or Tactically when Testing
Automating Strategically or Tactically when TestingAutomating Strategically or Tactically when Testing
Automating Strategically or Tactically when TestingAlan Richardson
 
Learning in Public - A How to Speak in Public Workshop
Learning in Public - A How to Speak in Public WorkshopLearning in Public - A How to Speak in Public Workshop
Learning in Public - A How to Speak in Public WorkshopAlan Richardson
 
How to Practise to Remove Fear of Public Speaking
How to Practise to Remove Fear of Public SpeakingHow to Practise to Remove Fear of Public Speaking
How to Practise to Remove Fear of Public SpeakingAlan Richardson
 

Más de Alan Richardson (17)

Open source tools - Test Management Summit - 2009
Open source tools - Test Management Summit - 2009Open source tools - Test Management Summit - 2009
Open source tools - Test Management Summit - 2009
 
The Future of Testing Webinar
The Future of Testing WebinarThe Future of Testing Webinar
The Future of Testing Webinar
 
Programming katas for Software Testers - CounterStrings
Programming katas for Software Testers - CounterStringsProgramming katas for Software Testers - CounterStrings
Programming katas for Software Testers - CounterStrings
 
About Consultant Alan Richardson Compendium Developments Evil Tester
About Consultant Alan Richardson Compendium Developments Evil TesterAbout Consultant Alan Richardson Compendium Developments Evil Tester
About Consultant Alan Richardson Compendium Developments Evil Tester
 
Shift left-testing
Shift left-testingShift left-testing
Shift left-testing
 
Automating and Testing a REST API
Automating and Testing a REST APIAutomating and Testing a REST API
Automating and Testing a REST API
 
TDD - Test Driven Development - Java JUnit FizzBuzz
TDD - Test Driven Development - Java JUnit FizzBuzzTDD - Test Driven Development - Java JUnit FizzBuzz
TDD - Test Driven Development - Java JUnit FizzBuzz
 
What is Testability vs Automatability? How to improve your Software Testing.
What is Testability vs Automatability? How to improve your Software Testing.What is Testability vs Automatability? How to improve your Software Testing.
What is Testability vs Automatability? How to improve your Software Testing.
 
What is Agile Testing? A MindMap
What is Agile Testing? A MindMapWhat is Agile Testing? A MindMap
What is Agile Testing? A MindMap
 
Evil Tester's Guide to Agile Testing
Evil Tester's Guide to Agile TestingEvil Tester's Guide to Agile Testing
Evil Tester's Guide to Agile Testing
 
The Evil Tester Show - Episode 001 Halloween 2017
The Evil Tester Show - Episode 001 Halloween 2017The Evil Tester Show - Episode 001 Halloween 2017
The Evil Tester Show - Episode 001 Halloween 2017
 
What is Regression Testing?
What is Regression Testing?What is Regression Testing?
What is Regression Testing?
 
Simple ways to add and work with a `.jar` file in your local maven setup
Simple ways to add and work with a `.jar` file in your local maven setupSimple ways to add and work with a `.jar` file in your local maven setup
Simple ways to add and work with a `.jar` file in your local maven setup
 
Re-thinking Test Automation and Test Process Modelling (in pictures)
Re-thinking Test Automation and Test Process Modelling (in pictures)Re-thinking Test Automation and Test Process Modelling (in pictures)
Re-thinking Test Automation and Test Process Modelling (in pictures)
 
Automating Strategically or Tactically when Testing
Automating Strategically or Tactically when TestingAutomating Strategically or Tactically when Testing
Automating Strategically or Tactically when Testing
 
Learning in Public - A How to Speak in Public Workshop
Learning in Public - A How to Speak in Public WorkshopLearning in Public - A How to Speak in Public Workshop
Learning in Public - A How to Speak in Public Workshop
 
How to Practise to Remove Fear of Public Speaking
How to Practise to Remove Fear of Public SpeakingHow to Practise to Remove Fear of Public Speaking
How to Practise to Remove Fear of Public Speaking
 

Último

Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfStefano Stabellini
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxAndreas Kunz
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfYashikaSharma391629
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 

Último (20)

Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
Advantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your BusinessAdvantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your Business
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 

Black Ops Testing Workshop Bugs in Redmine Project Management App

  • 1. Black Ops Testing Workshop Agile Testing Days Tony Bruce Steve Green Alan Richardson
  • 2. January 2015 Workshop, London www.BlackOpsTesting.com
  • 3. Introduction ● 3 * 5 minute lightning talks ● We expect you to test stuff ● We will coach & ask questions as you test ● We may periodically debrief
  • 4. What you are about to test ● Redmine ○ www.redmine.org ● Project Planning App ○ GUI, Rest API, Feeds, DB, Web Server
  • 5. Alan’s Bit at the start ● Model, Observe, Interrogate, Reflect, Manipulate ● Tools help me observe and manipulate ● Note Taking
  • 6. A model of how Alan tests ● Model ○ What I think I understand. Different viewpoints. ● Observe ○ at different points to corroborate/invalidate model ● Reflect ○ find gaps, lack of depth, derive intent ● Interrogate ○ Focussed, deep dive observation with intent ● Manipulate ○ Hypothesis exploration and “how we do stuff”
  • 7. Tools help me... … Observe and Manipulate
  • 10. Tools
  • 12. Note Taking ● Why: ○ Questions, Ideas, Risks, etc. ● What: ○ ToDos, Issues, Observations, Notes, etc. ● When: ○ Timestamps, sequential order ● Where: ○ urls, environment, users, etc. ● How: ○ commands, methods, tools used, etc. Evidence: ● logs, screenshots, output, files, etc.
  • 13. Tony’s bit ● Test ideas ● Tools ● Information & Intelligence
  • 14. Explore for test ideas Prep - Notes - Summary - Important bits - Ideas - Comments - Questions - Thoughts - Six Honest Men "I Keep Six Honest Serving Men ..." I KEEP six honest serving-men (They taught me all I knew); Their names are What and Why and When And How and Where and Who. …….. Rudyard Kipling
  • 15. Tools Browser - Add-ons - Extensions - Developer tools - Others - Accessibility - Security - Debugging -
  • 16. Bob Stewart Leadership Under Pressure: Tactics from the Front Line
  • 18. Steve’s bit What are we going to test? ● What’s new? ● What’s changed? ● What’s important? ● What are known buggy areas? ● What has not been tested previously?
  • 19. What are we going to test?
  • 20. What might be difficult?
  • 21. What might be difficult? ● How can we create enough data? ● How can we test time-related features? ● How do we know if the right thing happened?
  • 22. Lightning Talk Debrief Extras? Questions? Comments?
  • 23. Collaboration Rules ● Don’t load test the app, we are all using it ○ If you accidentally bring it down through a clever then that’s fine, ● Don’t change data you didn’t create
  • 24. Where is the app? ● You can install it locally if you want ○ http://redmine.org ● You can get an install or VM from bitnami ○ https://bitnami.com/stack/redmine ● You can use the redmine demo ○ http://demo.redmine.org/ ● You can use our server ○ ….
  • 25. Where is the app? ● Links removed as only valid at the time we conducted the workshop
  • 26. Testing Phase 1 ● Consider what we said ● Test the app in new ways, take notes, try new tools ● Black Ops Team will mingle - do ask for help ● We will debrief prior to the break
  • 27. “...no plan of operations extends with any certainty beyond the first contact with the main hostile force.” Field Marshall Helmuth Carl Bernard Graf von Moltke, 1871
  • 28. Test the **** out of Redmine
  • 29. Hints... Are you monitoring the HTTP traffic? Have you changed the DOM? Cookies? Internationalisation? Logged issues? ...
  • 31. Break (30 mins) Feel free to carry on testing if you want
  • 32. Testing Phase 2 ● You tell us
  • 33. Interrupt 1 Structure your data to make testing easier. ● Unique values (where possible) ● Sequenced
  • 34. Interrupt 2 Testing maxlength and truncation.
  • 35. Interrupt 2 Testing maxlength and truncation. 0005x0010x0015x0020x0025x0030x0035x004 0x0045x0050x0055x0060x0065x0070x0075x0 080x0085x0090x0095x0100x0105x0110x0115 x0120x0125x0130x0135x0140x0145x0150x01 55x0160x0165x0170x0175x0180x0185x0190x 0195x0200x0205x0210x0215x0220x0225x023
  • 36. Interrupt 2 Testing maxlength and truncation. http://bit.ly/1B7gQlx
  • 37. Interrupt 2a ● We have a broken app - can you get in? ● Links removed as only valid at the time of the workshop
  • 38. Interrupt 3 Recording data flow.
  • 39. Interrupt 4 Can we break the CSV, Atom or PDF exports? What might do that?
  • 41. Bugs we found 1 ● The PDF does not contain the Start Date, Estimated Time, % Done or File Description for the attachments that are included in the New Issue form. ● The PDF does not contain the Target Version and Spent Time values that are included in the View Issue form.
  • 42. Bugs we found 2 The Atom feed from the View Issue page has no content when it is viewed immediately after creating an issue. It did have content after adding a quote to the issue.
  • 44. Bugs we found 3 The File Description for an image is not saved if too many characters are entered in the New Issue form. We did not investigate where the boundary is.
  • 45. Bugs we found 4 The PDF that is generated from the Gantt page always shows the default zoom level regardless of the zoom level that has been selected. The URL of the PDF link contains a ‘zoom’ parameter (which does nothing). Changing the ‘months’ parameter has the desired effect.
  • 46. Bugs we found 5 Some non-Roman characters are displayed correctly on all HTML pages but they are not displayed in PDFs.
  • 47. Bugs we found 6 Some non-Roman characters are not displayed correctly in CSVs.
  • 48. Bugs we found 7 You’re able to delete all user accounts, including admin. There is only 1 admin (as far as I could see) Tell us how….
  • 49. Bugs we found 7 cont. Record browser traffic while deleting a account. Find the delete POST
  • 50. Bugs we found 8 "Your account has been activated. You can now log in. " System says I am already "logged in as eris" and I am on my account page Minor issue about wording
  • 51. Bugs we found 9 Error message about emails already in use when registering - privacy concern “Email has already been taken”
  • 52. Bugs we found 10 Maximum length of email is 60 chars but needs to accept 254
  • 53. Bugs we found 11 Can use an invalid language when registering a user.
  • 54. Bugs we found 12 Truncation on project identifier with no error or warning message i.e. create project with 255 char identifier - truncated to 100
  • 55. Bugs we found 13 When creating a project, the ID and name are populated via javascript but if I change the name then the identifier is not kept in sync.
  • 56. Bugs we found 14 Can create an invalid enabled_modules entry by submitting a module name which does not exist when creating a project
  • 57. Bugs we found 15 Change url to have csv or pdf views System should respond differently to csv and pdf on projects when GUI request rather than an API request 406 is better for API, 404 with html or 406 with html payload might be better
  • 58. Rathole 1 - Password Alan thought there was a bug with password lengths, and storing in a varchar 40, since password can be very long. But, a ‘hash’ is stored, not the password, this took time to discover.