Upload
folio3-software
View
111
Download
0
Tags:
Embed Size (px)
Citation preview
A Guideline to test your own codeA Guideline to test your own code
Developer TestingDeveloper Testing
www.folio3.com@folio_3
Who We Are
We are a Development Partner for our customers
Design software solutions, not just implement them
Focus on the solution – Platform and technology agnostic
Expertise in building applications that are:
Mobile Social Cloud-based Gamified
What We Do Areas of Focus
Enterprise
Custom enterprise applications
Product development targeting the enterprise
Mobile
Custom mobile apps for iOS, Android, Windows Phone, BB OS
Mobile platform (server-to-server) development
Social Media
CMS based websites for consumers and enterprise (corporate, consumer,
community & social networking)
Social media platform development (enterprise & consumer)
Folio3 At a Glance Founded in 2005
Over 200 full time employees
Offices in the US, Canada, Bulgaria & Pakistan
Palo Alto, CA. Sofia, Bulgaria
Karachi, Pakistan
Toronto, Canada
Areas of Focus: Enterprise Automating workflows
Cloud based solutions
Application integration
Platform development
Healthcare
Mobile Enterprise
Digital Media
Supply Chain
Areas of Focus: Mobile Serious enterprise applications for Banks,
Businesses
Fun consumer apps for app discovery,
interaction, exercise gamification and play
Educational apps
Augmented Reality apps
Mobile Platforms
Areas of Focus: Web & Social Media Community Sites based on
Content Management
Systems
Enterprise Social Networking
Social Games for Facebook &
Mobile
Companion Apps for games
www.folio3.com @folio_3
A Guideline to test your A Guideline to test your own codeown code
Developer TestingDeveloper Testing
Agenda
Importance of Developer Testing
What is Developer Testing?
Difference from Smoke Testing, Product Testing
Guideline for Developer Testing
Managing Code Changes
Importance of Developer Testing
If the programmer does not have enough
knowledge and information to test the program,
then he does not have enough knowledge and
information to write the program (Dr. William
Edwards Deming)
Importance of Developer Testing
A programmer who relies upon QA, testers,
other programmers, or customers to test their
code is a Bad Programmer
Importance of Developer Testing
Programmers testing their own code doesn't
imply that nobody else tests it. Programmers do
correctness testing; customers do acceptance
testing; and QA do exploratory(detailed) testing.
What is Developer Testing?
“Before the build is given to QA, Hit all points in
the spec that you developed against”
Difference Unit Testing
Focuses verification effort on the smallest unit of software design, component or module, e.g. a class/functions.
Smoke Testing High level functionality test to check that software build is ready for
detailed testing This is primarily to verify that build has been created correctly, AND
there are no major blocking issues that will stop QA from exercising the planned module testing.
QAs testing / Product Testing Functional, UI, UX, Compatibility, Load stress and performance,
Regression, Automated testing, bug verification, Test Plan defines what they do first, and in what order. Project
Manager should reviews this document in consultation with Lead Developer
Guideline for Developer Testing
At least, check every path of your code once
Always write code to handle null value parameters in
the functions
Always perform correctness testing of your work when
you update code from repository
Use Unit testing to automate correctness testing. (if
possible)
Guideline for Developer Testing
If you can’t test all the corner cases due to time
constraint, don’t be shy to inform your QA about it.
Rule of thumb: “Programmers and QA, both are
responsible for the quality of the software”
Managing Code Changes
A programmer MUST declare change impact for each of
its assignments; feature development, change requests,
or bug fixing.
Programmer must maintain changes in "changelogs" or
in a separate document with reference in the
changelogs.
A programmer MUST conduct testing that covers all the
areas impacted by the change.
Managing Code Changes
The formal declaration from the programmer
regarding the impact will enable QA to perform right
type of exploratory testing. Also it will help the QA
lead in selecting the right set/collection of test cases
for the QA cycle.
The project manager and/or development lead MUST
insure that each of the assignments have appropriate
change impact declarations from its assignee.
Contact
For more details about our services, please get in touch
with us.
US Office: (408) 365-4638
www.folio3.com