Liberty Mutual Information Systems uses open source tools to help Liberty Mutual Group exceed their business objectives by delivering high-value, market-responsive IT solutions. Richard Thompson discusses why open source tools are useful during various phases of development like unit testing, configuration management, and continuous integration. He provides examples of specific open source tools used for tasks like test reporting, static analysis, performance testing, and more. Thompson also outlines lessons for successfully implementing open source tools, like considering community size and support when selecting tools.
Agile Open Source Performance Testing Workshop for Business ManagersClever Moe
Use Selenium, soapUI, Sahi, TestMaker Performance Testing In Your Organization. These are slides from a free Webinar titled "The Agile Open Source Way To Load Test, Scalability Test, and Stress Test In Your Organization". Your organization may have adopted Agile Software Development Methodology and forgot about load and performance testing! Learn the Open Source Testing way to load and performance test your Web applications, Rich Internet Applications (RIA, using Ajax, Flex, Flash, Oracle Forms, Applets,) and SOAP and REST Web services. This free Webinar delivers a testing methodology, tools, and best/worst practices.
Agile Open Source Performance Testing Workshop for Business ManagersClever Moe
Use Selenium, soapUI, Sahi, TestMaker Performance Testing In Your Organization. These are slides from a free Webinar titled "The Agile Open Source Way To Load Test, Scalability Test, and Stress Test In Your Organization". Your organization may have adopted Agile Software Development Methodology and forgot about load and performance testing! Learn the Open Source Testing way to load and performance test your Web applications, Rich Internet Applications (RIA, using Ajax, Flex, Flash, Oracle Forms, Applets,) and SOAP and REST Web services. This free Webinar delivers a testing methodology, tools, and best/worst practices.
Continuous Integration to Shift Left Testing Across the Enterprise StackDevOps.com
With the move to agile DevOps, automated testing is a critical function to ensure high quality in continuous deployments.
In this session, learn how to start testing earlier and often to ensure quality in your codebase. Join Architect Suman Gopinath and Offering Manager Korinne Alpers to talk about shifting-left in the development cycle, starting with unit testing as a key aspect of continuous integration. You'll view a demo of the latest zUnit unit testing tooling for CICS Db2 applications, as well as hear best practices and tales from the testing trenches.
Software Testing is the last phase in software development lifecycle which has high impact on the quality of the final product delivered to the customer. Even after being a critical phase, it was not given the importance as it actually deserves. The schedule constraints and slippage carry forwarded from the previous phase also make the testing phase more torrent. History reveals that the situation has changed with time, wherein testing is now visualized as one of the most critical, phase of software development. This makes software testing a discipline which demands for continuous and systematic growth. Software testing is a trade-off between Cost, Time and Quality.
Coding Naked – Practical steps to moving towards & embracing TDD. We'll overview the normal roadblocks that people typically run in to, and practical ways to overcome those road blocks on your way to embracing Test Driven Development - make coding without tests as uncomfortable as coding naked!
At Grazitti Interactive, we know that early and prompt bug fixing can save a lot of time and resources. We therefore, follow international test parameters to provide end- to - end quality assurance testing and ensure smooth end user experience. Starting with creating an exhaustive list of test cases, we do various types of testing including smoke testing, functional testing, and regression testing; and also provide automated testing expertise.
automated exploratory test tools for web application. Make your test agile. Do not overpay for your automation. Test all aspects (performance, layout, analytic) not only concentrate on one specific thing.
What is automated testing?
Why automated testing?
Selection criteria of automation tools
Practical session on JMeter, WATIR, iMacro
Some useful tools
Question and answer?
EmployDEX offers assessment tests to seamlessly conduct campus hiring and lateral candidates assessments. We offer programming assessments (Java, Csharp, C and C++) and database assessments to conduct effective assessments of participants.
A programmer should be assessed on his/her programming abilities !!
Agile Open Source Performance Test Workshop for Developers, Testers, IT OpsClever Moe
Training For Selenium, soapUI, Sahi, TestMaker Performance Testing. Slide deck from the free Webinar titled "Technical Training On The Agile Open Source Way To Load Test, Scalability Test, and Stress Test." Learn the Agile Open Source Testing way to load and performance test your Web applications, Rich Internet Applications (RIA, using Ajax, Flex, Flash, Oracle Forms, Applets,) and SOAP and REST Web services. This free Webinar delivers a testing methodology, tools, and best/worst practices.
Migrating from HP QuickTest Pro QTP to TestMaker Object DesignerClever Moe
TestMaker is the leading open source alternative to HP Mercury tools (Load Runner, QuickTest Professional, Quality Center.) TestMaker provides immediate compatibility with thousands of new Web objects in Rich Internet Applications (RIA, using Ajax, Flex, Flash) without any test coding. In this live workshop, Frank Cohen, CEO and Founder at PushToTest, will discuss what to expect and What is missing in Open Source Test (OST) Tools
Continuous Integration to Shift Left Testing Across the Enterprise StackDevOps.com
With the move to agile DevOps, automated testing is a critical function to ensure high quality in continuous deployments.
In this session, learn how to start testing earlier and often to ensure quality in your codebase. Join Architect Suman Gopinath and Offering Manager Korinne Alpers to talk about shifting-left in the development cycle, starting with unit testing as a key aspect of continuous integration. You'll view a demo of the latest zUnit unit testing tooling for CICS Db2 applications, as well as hear best practices and tales from the testing trenches.
Software Testing is the last phase in software development lifecycle which has high impact on the quality of the final product delivered to the customer. Even after being a critical phase, it was not given the importance as it actually deserves. The schedule constraints and slippage carry forwarded from the previous phase also make the testing phase more torrent. History reveals that the situation has changed with time, wherein testing is now visualized as one of the most critical, phase of software development. This makes software testing a discipline which demands for continuous and systematic growth. Software testing is a trade-off between Cost, Time and Quality.
Coding Naked – Practical steps to moving towards & embracing TDD. We'll overview the normal roadblocks that people typically run in to, and practical ways to overcome those road blocks on your way to embracing Test Driven Development - make coding without tests as uncomfortable as coding naked!
At Grazitti Interactive, we know that early and prompt bug fixing can save a lot of time and resources. We therefore, follow international test parameters to provide end- to - end quality assurance testing and ensure smooth end user experience. Starting with creating an exhaustive list of test cases, we do various types of testing including smoke testing, functional testing, and regression testing; and also provide automated testing expertise.
automated exploratory test tools for web application. Make your test agile. Do not overpay for your automation. Test all aspects (performance, layout, analytic) not only concentrate on one specific thing.
What is automated testing?
Why automated testing?
Selection criteria of automation tools
Practical session on JMeter, WATIR, iMacro
Some useful tools
Question and answer?
EmployDEX offers assessment tests to seamlessly conduct campus hiring and lateral candidates assessments. We offer programming assessments (Java, Csharp, C and C++) and database assessments to conduct effective assessments of participants.
A programmer should be assessed on his/her programming abilities !!
Agile Open Source Performance Test Workshop for Developers, Testers, IT OpsClever Moe
Training For Selenium, soapUI, Sahi, TestMaker Performance Testing. Slide deck from the free Webinar titled "Technical Training On The Agile Open Source Way To Load Test, Scalability Test, and Stress Test." Learn the Agile Open Source Testing way to load and performance test your Web applications, Rich Internet Applications (RIA, using Ajax, Flex, Flash, Oracle Forms, Applets,) and SOAP and REST Web services. This free Webinar delivers a testing methodology, tools, and best/worst practices.
Migrating from HP QuickTest Pro QTP to TestMaker Object DesignerClever Moe
TestMaker is the leading open source alternative to HP Mercury tools (Load Runner, QuickTest Professional, Quality Center.) TestMaker provides immediate compatibility with thousands of new Web objects in Rich Internet Applications (RIA, using Ajax, Flex, Flash) without any test coding. In this live workshop, Frank Cohen, CEO and Founder at PushToTest, will discuss what to expect and What is missing in Open Source Test (OST) Tools
Selenium is a software testing framework for automating tests of Web applications. Join Frank Cohen for a Workshop to learn the basics of Selenium. A screencast for this presentation is on the PushToTest.com Web site.
Watch the recorded version of this Webinar here:
Curious about Continuous Integration? Tune in!
Continuous Integration (CI), which is a big part of continuous delivery, is the concept of continuously building and testing software using an automated process. We have learned that utilizing CI could help us catch bugs earlier, enable better visibility, reduce repetitive processes, enable the development team to produce deployable products at a moment's notice, and reduce risk overall.
These slides will identify the various levels of continuous integration and delivery with regards to a release maturity of the development team or parent organization.
New Generation Record/Playback Tools for AJAX TestingClever Moe
While some in the test community talk about record/playback technology as dead-end test automation approach, a new generation of open source record/playback test tools that every tester should consider is now available. Tools like Sahi and TestMaker Object Designer were built for AJAX environments and support thousands of web objects and the asynchronous nature of AJAX. Frank Cohen shows you how to install and use these free tools in your environment and record test scripts of a complicated AJAX application in IE, Chrome, Firefox, Safari, and Opera. Learn how to data-enable applications without coding, use branching and looping commands, construct advanced element target locators without using XPath, and package tests as reusable test objects to share with other testers.
Managing Continuous Delivery of Mobile Apps - for the EnterpriseSauce Labs
Enabling CI / CD in your mobile development process means understanding the different solutions, overcoming unique challenges and ensuring the right ownership of the processes. In this webinar, you will learn the steps required to enable Continuous Delivery of Mobile Application Platforms.
Presentation on Mobile DevOps. Presented at MoDevTablet conference on Sept. 14th. Focuses on:
- What is DevOps?
- What are the challenges of DevOps for Mobile?
- Best practices for Mobile DevOps
Blog post: https://sdarchitect.wordpress.com/2012/09/15/slides-for-my-presentation-on-mobile-devops/
Dev ops for cross platform mobile modeveast 12Sanjeev Sharma
Mobile Apps are not stand alone applications running on a mobile device anymore. Apps today are complex systems with back-ends hosted on clouds, with application servers, databases, API calls to external systems, and of course a powerful app running on a mobile device. Mobile App development and deployment is further complicated with todays need for supporting multiple mobile devices, with multiple OSes, multiple versions of the OSes, multiple form factors and varied network, CPU, GPU and memory specs.
DevOps - the new and growing movement addresses these development and deployment challenges. The goal of DevOps is to align Dev and Ops by introducing a set of principles and practices such as continuous integration and continuous delivery. Mobile apps take the need for these practices up a level due to their inherent distributed nature. Multi-platform mobile apps need even more care in applying DevOps principles as there are multiple platforms to be targeted, each with its own requirements, quirks, and nuanced needs.
This talk will introduce attendees to the basic practices of DevOps and then take a look at the DevOps challenges specific to cross-platform Mobile apps and present Best Practices to address them.
Continuous Integration with TestMaker, Hudson, Jenkins, BambooClever Moe
Slides from a 10 minute screencast showing how to use Hudson, Jenkins, Bamboo, Cruise Control continuous integration to automate functional test, load and performance tests, and production monitoring of Rich Internet Applications, SOA and BPM services. See http://www.pushtotest.com/screencastcentral for the video
1. “As a part of Liberty Mutual Information Systems enable Liberty Mutual Group to exceed their
business objectives by delivering high value, market responsive IT solutions”
Testing During The Development Phase
Using Open Source Tools
March 2008
Richard Thompson
(Verification Technologist)
1
2. Agenda
Introduction
Why Open Source
Examples Through the Lifecycle
Lessons in Implementing Open Source
Successfully
Questions
2
3. Overview of Liberty-IT
Belfast based software development & testing house
with ~230 staff
Our parent company is Liberty Mutual Group
a leading global insurer
Liberty Mutual ranks 95th on the Fortune 500 list of largest
U.S. corporations (based on 2006 revenue).
$85.5 billion in consolidated assets
Technologies include
Java, .Net, Struts, IBM Portal
Hibernate, Spring, Web Services -> SOA
Multiple database platforms
Dedicated Testing practice focusing on technical testing
solutions
3
4. Disclaimer
The views expressed within this
presentation belong solely to Richard
Thompson and do not necessarily
represent those of Liberty Mutual or
Liberty-IT.
4
6. Business Demands
Faster
Strategic advantage to be first to market
Quarterly -> Monthly -> Fortnightly Releases
Better
Lower and lower tolerance for poor quality
Expect higher productivity
Demand more visibility into project status
Cheaper
Continually looking to reduce costs
Everything must have a ROI (Return on Investment)
6
7. Growing Role of Open Source
Perception of high vendors prices
Growing number of high quality, mature open source
products
Which are highly reliable
Have large world wide support
More and more large companies are using Open
Source tools/ components
Amazon
Google
IBM
Conducted by Boston-based Forrester Research Inc. in
February 2004, a study revealed that 65 of the 140
companies questioned -- almost 50 percent -- are using
open source applications.
7
9. Open Source Solutions
Unit Testing JUnit, HttpUnit, Configuration CVS, Subversion
HTMLUnit, MaxQ Management
Automated Watir, Samie, Build Management ANT
Functional/ Pamie, Jiffie
Regression Testing
Performance OpenSTA, JMeter, Project Management XPlanner,
Testing WebInject, Grinder dotProject
Web Service Testing SoapUI, HttpUnit, Application Big Brother, Nagios
XMLUnit Monitoring
Code Coverage Defect Tracking Mantis, Bugzilla
Emma, Cobertura
Test Management TestLink,
Test Case Web
Static Analysis CheckStyle, PMD,
FindMoreBugs
Continuous Cruise Control
Integration
9
10. Testing Through the Lifecycle
Requirements Development IS Testing Business Testing Production
Post
Requirements Unit/Component Smoke Acceptance
Implementation
Review & Testability Testing Testing Testing
Validation
Code Review & System Regression Application
Static Analysis Testing Testing Monitoring
Performance
Code Coverage Testing
Defect Tracking
Reports
10
11. Automated Unit Test Reporting
JUnit
• Simple framework for writing
automated tests
• Written in Java to test Java, so
Developers only need to know 1
language
• Most widely used automated unit
testing framework for Java
• Provides fast/ repeated feedback on
quality of code
11
12. PMD – Static Analysis
PMD scans Java source code and looks for potential problems like:
•Possible bugs - empty try/catch/finally/switch statements
•Dead code - unused local variables, parameters and private methods
•Suboptimal code - wasteful String/StringBuffer usage
•Overcomplicated expressions - unnecessary if statements, for loops that could
be while loops
•Duplicate code - copied/pasted code means copied/pasted bugs
12
13. Continuous Integration Process
Cruise Control
Change Code Server
Request Repository (Continuous Build
& Test)
Developer
Build
(Automated Build
Script)
Reporting
DB Automated Code Automated
Analysis Unit Test
1. Code Coverage,
2. Static Analysis,
3.Coding Standards
13
17. CVS Check-In Process
CVS
Comment OK
Mantis
Comment
Bugnote
Developer Invalid
Checks In code
Pre-commit validation Post-commit validation
Ensures that comment contains Writes out the following
a) BUGID: information to a DB table
b) BUGNOTE: a) BUGID:
c) TEST PLAN/DESCRIPTION b) BUGNOTE:
c) TEST PLAN/DESCRIPTION
d) CVS Committer
e) Files updated (with full path)
17
18. Watir – Browser Automation
Watir
•Web Application Testing in Ruby
•Watir is a toolkit used to automate
browser-based tests in Internet Explorer
using IE’s COM interface
18
19. Performance Testing
OpenSTA
•Open Source alternative to LoadRunner/
Rational Performance Manager
•Large community, excellent online
documentation
•Option to purchase guaranteed support
(for a price ☺)
19
21. Factors to consider when selecting
Main Places to look
Sourceforge (http://sourceforge.net/ )
Freshmeat (http://freshmeat.net/ )
What to look for
Active community
Regular releases
> 90% Activity
Documentation
Do the technologies used match those used within the company?
Perform a Pilot
Try on a single project, review lessons learned, move forward
Determining ROI
Measure cost to implement on project verses benefits gained
Also factor in ongoing maintenance
Implementation
Typically requires a higher level of technical ability than Vendor solutions
21
22. Pilot & Measure The Value
• Perform a pilot implementation and measure the setup time, learning curve
& value added
• For example: Piloting Watir on a particular project resulted in:
• 38% less defects identified during Business Testing
• Testing Coverage significantly increased
• Developers free to perform other activities
• Automated tests reused within Regression & Smoke Testing
• Reduction in Defects found in Production
90
80
70
60
50 May
%
Aug
40
30
20
10
0
Requirements Development Testing Production 22