Improve Development Process with Open Source Software - PowerPoint PPT Presentation

About This Presentation
Title:

Improve Development Process with Open Source Software

Description:

??? senior consultant. jchen_at_thoughtworks.com ... Cruise Control. Your project's. Build file. Ant, Maven, Make. 2. Run Build. 5. Publish Artifacts ... – PowerPoint PPT presentation

Number of Views:52
Avg rating:3.0/5.0
Slides: 21
Provided by: sidneyg
Category:

less

Transcript and Presenter's Notes

Title: Improve Development Process with Open Source Software


1
Improve Development Process with Open Source
Software
2
Agenda
  • Introduction
  • Selenium
  • Demo
  • CruiseControl
  • Showcase
  • Conclusion

3
Share experience
  • How do we test the web project?
  • Whats our daily development like?
  • Happy or painful?
  • Why?
  • Share your experience!

4
  • Question 1
  • Functional Test For Web app

5
  • Traditional approach

Release
Development
Acceptance Testing
Regression Testing
  • Developers have moved on
  • Too close to release

6
  • Faster feedback

Release
Development
Acceptance Testing
Regression Testing
Write test as you go
Problems are found quickly
Run them as often as you can
7
Why Automated?
  • Manual testing is slow, tedious and error-prone
  • Especially for regression

Either take long time or less thorough
What now? Start again?
8
Consistently Thorough Fast enough to start again
and again and again
9
Selenium
http//www.openqa.org/selenium/
10
Selenium
  • Open source test tool for web applications.
  • Run in browser
  • Test browser compatibility system
    functionality.
  • Easy to use.
  • Test cases are written in pure HTML
  • Clean and impressive UI

11
Demo
  • Demo
  • Start hsqldb
  • Start tomcat
  • Firefox
  • http//localhost8080/jpetstore
  • http//localhost8080/jpetstore/selenium

12
  • Question 2
  • Continuous Integration

13
What is Continuous Integration
  • Integrates source code and runs tests after each
    commit of code to the source repository.
  • Near-immediate feedback to the developer

14
Benefits of C.I.
  • Minimizes integration risk.
  • Supports easier defect diagnosis.
  • Encourages good testing habit
  • Support release management
  • Enforces company development policy

15
CruiseControl
http//cruisecontrol.sourceforge.net/
Also see Luntbuild, which is a simpler analogue
of CruiseControl.
16
About CruiseControl
  • Think of it as timer for Ant.
  • Simple design. Full featured, but not bloated.
  • Adapts to your project, not the other way around.
  • Can be completely customized.

17
Build loop of C.C.
1. Bootstrap
2. Check for modifications
VCS
Cruise Control
3. Get the revision log
Build Artifacts Dir
5. Publish Artifacts
Mail/Sound/Light
6. Send to publisher
1. Get the latest source
4. Run Build
3. Tag source (optional)
Project Specific Adapter - Ant Script
Your projects Build file Ant, Maven, Make
2. Run Build
18
  • Showcase

19
Conclusion
  • DRY, use automation test/continuous tools help
    you improve your development process, and
    maximize customer value.
  • Selenium helps you test webapp more easily.
  • Keep CruiseControl running. it gives you feedback
    as soon as possible.

20
Resources
  • Mike Clark, author of Pragmatic Project
    Automation
  • http//media.pragprog.com/movies/auto/CruiseContro
    l_MikeClark.html
  • Selenium IDE
  • http//www.openqa.org/selenium-ide/
  • Selenium Remote Control
  • http//www.openqa.org/selenium-rc/
Write a Comment
User Comments (0)
About PowerShow.com