Agile Testing Using Agile Tools

37
Agile Testing Using Agile Tools Dmitry Lebedev NB Crew Agile Tour, Vilnius, 6 of october, 2011

Transcript of Agile Testing Using Agile Tools

Page 1: Agile Testing Using Agile Tools

Agile Testing Using Agile Tools

Dmitry LebedevNB Crew

Agile Tour, Vilnius, 6 of october, 2011

Page 2: Agile Testing Using Agile Tools

Dmitry Lebedev

www.agile-latvia.org

www.jug.lv

www.agiletestingdays.com

NB Crew

Consulting & Development

Page 3: Agile Testing Using Agile Tools

Meaning of methodology?

Page 4: Agile Testing Using Agile Tools

Meaning of methodology!

Page 5: Agile Testing Using Agile Tools

Methodology

Avoid a FailureHit the Target

Page 6: Agile Testing Using Agile Tools

Story of Two Islands (Sad One)

Page 7: Agile Testing Using Agile Tools

Two Tribes

Page 8: Agile Testing Using Agile Tools

Two Mindsets (I)

Page 9: Agile Testing Using Agile Tools

Two Mindsets (II)

Page 10: Agile Testing Using Agile Tools

Two Complexities

Internal Complexity External Complexity

Page 11: Agile Testing Using Agile Tools

Two Islands (Reconsidered)

Page 12: Agile Testing Using Agile Tools

Traditional Testing Tools

Expensive software

Custom scripts

Customized OS tools

Hands & Brain

Page 13: Agile Testing Using Agile Tools

Agile Testing Tools?

Page 14: Agile Testing Using Agile Tools

Approach to Quality

Page 15: Agile Testing Using Agile Tools

Agile Tools You Really Need

• Whiteboard, markers

• Pairing stations

• Index cards

• Toys, food

• Stickies,sharpies

Page 16: Agile Testing Using Agile Tools

Typical Case

Web Frontend

Java Application3rd party web-service

DB

Log File

Page 17: Agile Testing Using Agile Tools

Tested Points (Often)

Web Frontend

Java Application3rd party web-service

DB

Log File

Page 18: Agile Testing Using Agile Tools

Tested Points (Less Often)

Web Frontend

Java Application3rd party web-service

DB

Log File

Page 19: Agile Testing Using Agile Tools

Tested Points (Sweet Dreams)

Web Frontend

Java Application3rd party web-service

DB

Log File

Page 20: Agile Testing Using Agile Tools

Enterprise Tesing Is Boring

Page 21: Agile Testing Using Agile Tools

How to Make It Fun Again?!

Page 22: Agile Testing Using Agile Tools

Recipes

1. Become a software craftsman

Page 23: Agile Testing Using Agile Tools

Recipes

1. Become a software craftsman

2. Create rather than buy

Page 24: Agile Testing Using Agile Tools

Recipies

1. Become a software craftsman

2. Create rather than buy

3. Don’t come un-armed

Page 25: Agile Testing Using Agile Tools

Recipies

1. Become a software craftsman

2. Create rather than buy

3. Don’t come un-armed

4. Automate as much as can

Page 26: Agile Testing Using Agile Tools

Why Ruby?!

1. Free

2. Flexible but Powerful

3. Great Community

Page 27: Agile Testing Using Agile Tools

Let's automate!

- Watir

- Selenium

- Cucumber

- RSpecs

Page 28: Agile Testing Using Agile Tools

When It's Not Possible...

- Legacy

- 3rd Party Systems

- Propietary Software

Page 29: Agile Testing Using Agile Tools

Code Examples

Log parsing

Page 30: Agile Testing Using Agile Tools

Code Examples

File.open("tesfile.log", "r") do |infile|while (line = infile.gets) if line =~ /.*Id:\d+ session (start|finish)/

puts "#{line}" end

endend

Page 31: Agile Testing Using Agile Tools

Code Examples

Testing web services

Page 32: Agile Testing Using Agile Tools

Code Examples

require 'rubygems'

require 'httpclient'

clnt = HttpClient.new

params = {"user_id"=>"123",

"action"=>"credit",

"currency"=>"EUR",

"amount" => "10"}

puts clnt.get("http://somehost/service", params)

Page 33: Agile Testing Using Agile Tools

Code Examples

Gathering the pack

Page 34: Agile Testing Using Agile Tools

Code Example

require 'test/unit'

class MyFirstTest < Test::Unit::TestCase

def test_logs_output

....

end

def test_web_service

....

end

end

Page 35: Agile Testing Using Agile Tools

Resources to Explore

• The Only Agile Tools You’ll Ever Need, by Jeff Langr, Tim Ottinger

http://pragprog.com/magazines/2011-09/the-only-agile-tools-youll-ever-need

• Everyday Scripting with Ruby: for Teams, Testers, and You, by Brian Marick

http://pragprog.com/book/bmsft/everyday-scripting-with-ruby

Page 36: Agile Testing Using Agile Tools

Questions?!

1. Twitter – lebedev_dmitry

2. www.agile-latvia.org

3. www.jug.lv

Page 37: Agile Testing Using Agile Tools

Copyrights

All images were taken from en.wikipedia.org and are used under wikimedia creative, creative commons,

GPL licenses