evil testers guide to technical testing

42
The Evil Tester's Guide to Technical Testing Eurostar Webinar 4th December 2012 Alan Richardson www.eviltester.com www.compendiumdev.co.uk www.seleniumsimplified.com @eviltester

Upload: alan-richardson

Post on 28-May-2015

6.236 views

Category:

Technology


2 download

DESCRIPTION

Presented December 4th for Eurostar 2012 Conference "Best of Conference Webinar Week"

TRANSCRIPT

Page 1: Evil testers guide to technical testing

The Evil Tester's Guide to Technical Testing

Eurostar Webinar 4th December 2012

Alan Richardsonwww.eviltester.com

www.compendiumdev.co.ukwww.seleniumsimplified.com@eviltester

Page 2: Evil testers guide to technical testing

Warning: This Webinar contains Opinions.

● Why should you care?● How to spot Technical Testing?● What stops Technical Testing?● Test Techniques Revisited● How a technical tester views a system● Can anyone do this?● The bluffer's guide to technical testing

Page 3: Evil testers guide to technical testing

Why Should you care?

Page 4: Evil testers guide to technical testing

Why should you care?

"Technical Testing sounds like hard work and I can get away without doing this stuff."

Page 5: Evil testers guide to technical testing

Reasons Based on FEAR

● Projects are becoming more technical

● "They" are now testing

Page 6: Evil testers guide to technical testing

Reasons based on HOPE

● Flexibility

● Find different types of bugs faster

● Find bugs faster

● Add more value

● Future proof yourself

Page 7: Evil testers guide to technical testing

What IS Technical Testing?

Page 8: Evil testers guide to technical testing

I don't know...

...But I do know:

● Technical knowledge transfers between domains

● Testing != Technical

Page 9: Evil testers guide to technical testing

And I know it when I see it... So let's play...

The

"Is it Technical Testing?"

Game

Page 10: Evil testers guide to technical testing

"Do you look in the Database?"If you say...

"I don't look at the database that's not my job."

Are you doing Technical Testing?

Page 11: Evil testers guide to technical testing

NO - wrong attitude

Page 12: Evil testers guide to technical testing

"Do you look in the Database?"If you say...

"Of course I look in the database, I run these queries that the developers gave me"

Are you doing Technical Testing?

Page 13: Evil testers guide to technical testing

No - Not enough Understanding

Page 14: Evil testers guide to technical testing

"Do you look in the Database?"If you say...

"Yes, I use the default admin tool, I run custom queries before and after I use the app, to check results. I understand the DB schema pretty well."

Are you doing Technical Testing?

Page 15: Evil testers guide to technical testing

Yes - with more to learn

Page 16: Evil testers guide to technical testing

"Do you look in the Database?"If you say...

"Of course, and I sometimes ssh in, I never use the default tool, I prefer DBToolX. I have a script that compares the schema between releases, and yeah, I query the db to see what's going on."

Are you doing Technical Testing?

Page 17: Evil testers guide to technical testing

Yes - I aspire to this

Page 18: Evil testers guide to technical testing

How to spot it?

● Attitude● Asking Questions● Leave no stone unturned● Tool Up● Pairing● Experiment● Own It

Page 19: Evil testers guide to technical testing

Test Techniques Revisited

Page 20: Evil testers guide to technical testing

Boundary Value Analysis

● Process a drop down with 250 items

● One technical premise: loop conditions are tricky

boolean foundit=false;for(int item=1; item<=250; item++){

if(db.isItemPresent(dropDown.get(item)){foundit=true;break;

}}

Page 21: Evil testers guide to technical testing

BVA and Technical Knowledge

● What if the technical premise changes?

foundit = false;for(Item item : dropDown.getItems()){

if(chosenItem.equals(item)){foundit=true;break;

}}

Page 22: Evil testers guide to technical testing

How a Technical Tester Views Your Application

Page 23: Evil testers guide to technical testing

A Non-technical view of an app

http://www.compendiumdev.co.uk/selenium/search.php

Requirements Doc

Functional Spec

Non-functional Requirements

Page 24: Evil testers guide to technical testing

A Technical View - Web App Terrain

Page 25: Evil testers guide to technical testing

A Technical View - Server Terrain

Page 26: Evil testers guide to technical testing

A Technical View - Browser Terrain

Page 27: Evil testers guide to technical testing

A Technical View - Architecture Terrain

Page 28: Evil testers guide to technical testing

A Technical View - User Terrain

Page 29: Evil testers guide to technical testing

What StopsTechnical Testing?

Page 30: Evil testers guide to technical testing

What stops technical testing?

● Environment● The Manager● ...

● Personal Motivation

Page 31: Evil testers guide to technical testing

Environment: Lock it down

You can try to stop technical testing by locking down the environment.

Page 32: Evil testers guide to technical testing

The Manager

"I'm a manager, I don't need to be technical."

Page 33: Evil testers guide to technical testing

Personal Motivation...

"Will trumps everything"

Page 34: Evil testers guide to technical testing

Can Anyone do this?

Page 35: Evil testers guide to technical testing

If I can do it, anyone can do it...

... and I've seen other people do it.

Page 36: Evil testers guide to technical testing

Shh... don't tell anyone... but...

...I'm not that technical

Page 37: Evil testers guide to technical testing

I've learned some secrets...● Ask questions● Catalogue the technologies

○ use the default tools● Copy others

○ pair and make notes● Study and learn

○ on your own● Identify tools by modelling:

○ Observation○ Manipulation○ Interrogation

● Experiment● Keep Learning

"Don't worry about breaking things. Testers are supposed to break things."

Page 38: Evil testers guide to technical testing

... and I've seen other people do it.

If I can do it, anyone can do it...

Page 39: Evil testers guide to technical testing

Bluffer's Guide to Technical Testing

Page 40: Evil testers guide to technical testing

A Bluffer's Guide to Technical Web Testing - starter for 13

Page 41: Evil testers guide to technical testing

Further Reading

● The OWASP Testing Guide○ http://www.owasp.org/index.php/OWASP_Testing_Project

● Putting Systems to Work by Derek Hitchins○ http://www.hitchins.net/SysBooks.html (free download pdf)

● The Art of War by Sun Tzu○ provides a generalisable model for technical testing - including

map/territory, observation (use of spies) and manipulation○ www.sonshi.com○ http://www.feedbooks.com/book/168/the-art-of-war

● The Book of Five Rings by Miyamoto Musashi○ How to practice and improve○ http://www.feedbooks.com/book/3953/the-book-of-five-rings

Page 42: Evil testers guide to technical testing

Next up: YouAlan Richardson

@eviltester

eviltester.comcompendiumdev.co.ukseleniumsimplified.com