Sunday, May 20, 2012

ISTQB-International Software Testing Qualifications Board



Certifying Software Testers Worldwide
The International Software Testing Qualifications Board (ISTQB) is a software testing qualification certification organization that operates internationally. Founded in Edinburgh in November 2002, ISTQB is a non-profit association legally registered in Belgium.
The ISTQB qualifications are based on a syllabus with a hierarchy of qualifications and guidelines for accreditation and examination. ISTQB provides 3 levels of certification





1. FOUNDATION LEVEL
1. Foundation Level in a Nutshell(CTFL)
Why Foundation?
The Foundation Level qualification is aimed at professionals who need to demonstrate practical knowledge of the fundamental concepts of software testing. This includes people in roles such as test designers, test analysts, test engineers, test consultants, test managers, user acceptance testers and IT Professionals.
The Foundation Level qualification is also appropriate for anyone who needs a basic understanding of software testing, such as project managers, quality managers, software development managers, business analysts, IT directors and management consultants.
What are the entry criteria?
It is suggested that candidates for the Foundation Level certification have at least six months' practical experience in a professional testing role.
Which levels are available after Foundation?
Holders of the Foundation certificate are eligible to continue on to higher level software testing qualifications, certifying themselves at Advanced level, and then at the Expert level, as shown below. The entire learning journey is underpinned by the ISTQB® Glossary.
2. Foundation Level Content

3. Foundation Level Learning Objectives
Foundation Level professionals should be able to:
1.Use a common language for efficient and effective communication with other testers and project stakeholders.
2.Understand established testing concepts, the fundamental test process, test approaches, and principles to support test objectives.
3.Design and prioritize tests by using established techniques; analyze both functional and non-functional specifications (such as performance and usability) at all test levels for systems with a low to medium level of complexity.
4.Execute tests according to agreed test plans, and analyze and report on the results of tests.
Write clear and understandable incident reports.
5. Effectively participate in reviews of small to medium-sized projects.
Be familiar with different types of testing tools and their uses; assist in the selection and implementation process.
4. Foundation Level exam structure
To get an ISTQB® Certified Tester Foundation Level Certificate you must successfully pass the Foundation Exam administered by your National or Regional Board or Examination Provider.
Upon successful completion of the exam, you will be issued with an ISTQB® Foundation Level Certificate, which is internationally recognized.
The exam aims to verify that the candidate has acquired the professional knowledge contained in the syllabus.
The Foundation Level exam is characterized by:
1. 40 multiple-choice questions
2. a scoring of 1 point for each correct answer
3. a pass mark of 65% (26 or more points)
4. a duration of 60 minutes (or 75 minutes for candidates taking exams that are not in their native or local language).
Exams may be taken as part of a course delivered by an Accredited Training Provider or taken independently at an examination center or in a public exam.
The typical duration of the Foundation Level Training offered by an Accredited Training Provider is 3 days. Completion of an accredited training course is not a prerequisite for participating to the exam.
Please refer to the Web Sites of the ISTQB® Member Boards and ISTQB® Accredited Training Providers for exam and training availability.
5. Foundation Level material for download
Foundation Level Syllabus
Foundation Level Learning Objectives
Sample Foundation Level Exam Questions
2. Advanced Level
1. Advanced Level in a Nutshell

Why advanced?
The Advanced Level qualification is aimed at people who have achieved an advanced point in their careers in software testing. This includes people in roles such as testers, test analysts, test engineers, test consultants, test managers, user acceptance testers and software developers.
This Advanced Level qualification is also appropriate for anyone who wants a deeper understanding of software testing, such as project managers, quality managers, software development managers, business analysts, IT directors and management consultants.
To receive Advanced Level certification, candidates must hold the Foundation Certificate and satisfy the Exam Board which examines them that they have sufficient practical experience to be considered Advanced Level qualified.Refer to the relevant Exam Board to understand their specific practical experience criteria.
Advanced Level Modules
Test Manager
Test Analyst
Technical Test Analyst
Technical Test Analyst
When a Certified tester successfully achieves certification on all three modules, he receives a "Full Advanced" certificate
2. Advanced Level contents
Contents are highlighted with different colours, according to the Advanced Level Exam in which they are covered:
Common Topics
Test Management Topics
Test Analyst Topics
Technical Test Analyst Topics

3.Test Manager Learning Objectives
Advanced Level Test Managers should be able to:
Define the overall testing goals and strategy for the systems being tested
Plan, schedule and track the tasks
Describe and organize the necessary activities
Select, acquire and assign the adequate resources to the tasks
Organize the communication between the members of the testing teams, and between the testing teams and all the other stakeholders
Justify the decisions and provide adequate reporting information where applicable
4. Test Analyst Learning Objectives
Advanced Level Test Analyst should be able to:
Structure the tasks defined in the test strategy in terms of business domain requirements
Analyze the system in sufficient detail to meet the user quality expectations
Evaluate the system requirements to determine domain validity
Prepare and execute the adequate activities, and report on their progress
Implement the necessary tools and techniques to achieve the defined
Exams
ISTQB® exams are administered by the Member Boards and the Exam Providers.
Please refer to the Member Board directory to find the exam date and location more suitable to your needs.
If you are an organization willing to manage an exam for a considerable number of your employees, please contact the Board nearest to you to sort out the possibility to organize an in-house exam.
ISTQB® exams are organized in a consistent way world-wide and are based on a precisely defined number of questions, varying depending on the certification level; questions are distributed in accordance to the syllabi topics and to K-Levels.
To learn more about ISTQB® exams, consult the Exam FAQs and take a look at the sample exams made available by ISTQB®.
For more details on exam structure please refer to the ISTQB® Exam Information document.
HYDERABAD
2012-06-02
2012-06-09
2012-06-16
NSEiT
303-304, 3rd Floor, Mahavir Chambers, 3-6-363, Near Liberty cross Road, Basheerbagh, Hyderabad � 500029 Andhra Pradesh Landmark: Mahavir Chambers
Pin: 500029
Contact No: 1204236187
Contact Person: Sonal Garg
Email: sonal@indiantestingboard.com
NSEiT Centres are for ISTQB Foundation Level Online Examinations.
How to Apply
If you are interested in getting ISTQB certification you need to do the following:
Check the examination schedule for your city.
Fill the Online Enrollment Form .
Kindly Select Public if you are appearing at our Public exam dates. If you are appearing at your company premises then select Corporate.
If you have any queries fill Online Enquiry Form.
You would immediately receive a confirmation mail in your Personal ID along with further instructions.
As per instructions Send a D/D of amount specified in mail in favour of INDIAN TESTING BOARD, payable at 'NEW DELHI' to our Noida or Bangalore Office, you can find the address at http://istqb.in/contact.htm
Last date of payment & registration for online exams is 15 days before the exam date & last date for Al exams is 10 days before the exam date.
You will be informed of the timing and procedure of the examination. Appear for the examination on the designated date, time and venue.
Please do not forget to bring a photo identity (Passport, Driving License, Election Card etc.) with you when you appear for the examination.
You will be informed of your result within two weeks and passing candidates will receive the certificate within eight weeks.
Foundation level exams are online. Results for online exam will be immediate.
Training Provider
Name
GrapeSoft
Address:
10-3-1/2, Gemini House, Mehdipatnam
City:
Hyderabad
Country:
India
Phone:
+91 40 2353 5963/64
Fax:
Mail:
business@grapesoft.com
Web Site:
www.grapesoft.com
Reference Person:
Accredited by:
Indian Testing Board (ITB)
More info exam dates......................ISTQB

Wednesday, May 16, 2012

Web Application Testing



Web Application Testing

Web application is tested in 3 phase





Web tier testing—Browser compatibility.
Middle tier testing—Functionality, security.
Data base tier testing—Database integrity, contents.
Types
1) Functionality Testing
2) Usability testing
3) Interface testing
4) Compatibility testing
5) Performance testing
6) Security testing
1) Functionality Testing
This is used to check of your product is as per the specifications you intended for it as well as the functional requirements you charted out for it in your developmental documentation.Testing Activities Included
Test all links in your webpages are working correctly and make sure there are no broken links.
Outgoing links
Internal links
Anchor Links
Mail To Links
Test Forms are working as expected :Forms are the integral part of any web site. Forms are used to get information from users and to keep interaction with them. So what should be checked on these forms?
First check all the validations on each field.
Check for the default values of fields.
Wrong inputs to the fields in the forms.
Options to create forms if any, form delete, view or modify the forms
Database testing:
Data consistency is very important in web application. Check for data integrity and errors while you edit, delete, modify the forms or do any DB related functionality.
Check if all the database queries are executing correctly, data is retrieved correctly and also updated correctly. More on database testing could be load on DB, we will address this in web load or performance testing below
Test Cookies are working as expected. Cookies are small files used by websites to primarily remember active user sessions so you do not to log in every time you visit a website. Cookie Testing will include Testing cookies (sessions) are deleted either when cache is cleared or when they reach their expiry. Delete cookies (sessions) and test that login credentials are asked for when you next visit the site.
2) Usability Testing:
Test for navigation:
Navigation means how the user surfs the web pages, different controls like buttons, boxes or how user using the links on the pages to surf different pages.
Usability testing includes:
Web site should be easy to use. Instructions should be provided clearly. Check if the provided instructions are correct means whether they satisfy purpose.
Main menu should be provided on each page. It should be consistent.
Content checking:
Content should be logical and easy to understand. Check for spelling errors. Use of dark colors annoys users and should not be used in site theme. You can follow some standards that are used for web page and content building. These are common accepted standards like as I mentioned above about annoying colors, fonts, frames etc.
Content should be meaningful. All the anchor text links should be working properly. Images should be placed properly with proper sizes.
These are some basic standards that should be followed in web development. Your task is to validate all for UI testing
3) Interface Testing:
The main interfaces are:
Web server and application server interface
Application server and Database server interface.
Check if all the interactions between these servers are executed properly. Errors are handled properly. If database or web server returns any error message for any query by application server then application server should catch and display these error messages appropriately to users. Check what happens if user interrupts any transaction in-between? Check what happens if connection to web server is reset in between
4) Compatibility Testing:
Compatibility of your web site is very important testing aspect. See which compatibility test to be executed:
Browser compatibility
Operating system compatibility
Mobile browsing
Printing options
Browser compatibility:
In my web-testing career I have experienced this as most influencing part on web site testing.
Some applications are very dependent on browsers. Different browsers have different configurations and settings that your web page should be compatible with. Your web site coding should be cross browser platform compatible. If you are using java scripts or AJAX calls for UI functionality, performing security checks or validations then give more stress on browser compatibility testing of your web application.
Test web application on different browsers like Internet explorer, Firefox, Netscape navigator, AOL, Safari, Opera browsers with different versions.
OS compatibility:
Some functionality in your web application is may not be compatible with all operating systems. All new technologies used in web development like graphics designs, interface calls like different API’s may not be available in all Operating Systems.
Test your web application on different operating systems like Windows, Unix, MAC, Linux, Solaris with different OS flavors.
Mobile browsing:
This is new technology age. So in future Mobile browsing will rock. Test your web pages on mobile browsers. Compatibility issues may be there on mobile.
Printing options:
If you are giving page-printing options then make sure fonts, page alignment, page graphics getting printed properly. Pages should be fit to paper size or as per the size mentioned in printing option.
5) Performance testing:
Web application should sustain to heavy load. Web performance testing should include:
Web Load Testing
Web Stress Testing
Test application performance on different internet connection speed.
In web load testing test if many users are accessing or requesting the same page. Can system sustain in peak load times? Site should handle many simultaneous user requests, large input data from users, Simultaneous connection to DB, heavy load on specific pages etc.
Stress testing: Generally stress means stretching the system beyond its specification limits. Web stress testing is performed to break the site by giving stress and checked how system reacts to stress and how system recovers from crashes.
Stress is generally given on input fields, login and sign up areas.
In web performance testing web site functionality on different operating systems, different hardware platforms is checked for software, hardware memory leakage errors,
6) Security Testing:
Following are some test cases for web security testing:
Test by pasting internal URL directly into browser address bar without login. Internal pages should not open.

Tuesday, April 03, 2012

CMM(Capability Maturity Model)


The Capability Maturity Model (CMM), also known as the Software CMM (SW-CMM), was first described by Watts Humphrey in his book Managing the Software Process. The CMM is a process model based on software best-practises effective in large-scale, multi-person projects.
The CMM has been retired and not been updated in over 10 years. CMM has been superseded by CMMI (Capability Maturity Model Integration).
The CMM has been used to assess the maturity levels of organisation areas as diverse as software engineering, system engineering, project management, risk management, system acquisition, information technology (IT) or personnel management, against a scale of five key processes, namely: Initial, Repeatable, Defined, Managed and Optimised.
CMM was developed by the Software Engineering Institute (SEI) at Carnegie Mellon University in Pittsburgh. It has been used extensively for avionics software and government projects around the world.
Currently, some government departments require software development contract organisations to achieve and operate at a level-3 standard Maturity model
The Capability Maturity Model (CMM) is a way to develop and refine an organization's processes. The first CMM was for the purpose of developing and refining software development processes. A maturity model is a structured collection of elements that describe characteristics of effective processes. A maturity model provides:

  1. a place to start the benefit of a community’s prior experiences 
  2. a common language and a shared vision 
  3. a framework for prioritising actions 
  4. a way to define what improvement means for your organization. 
  5. A maturity model can be used as a benchmark for assessing different organizations for equivalent comparison. The model describes the maturity of the company based upon the project the company is handling and the related clients
  6. Levels of the CMM
Level 1 - Initial
At maturity level 1, processes are usually ad hoc, and the organization usually does not provide a stable environment. Success in these organizations depends on the competence and heroics of the people in the organization, and not on the use of proven processes. In spite of this ad hoc, chaotic environment, maturity level 1 organizations often produce products and services that work; however, they frequently exceed the budget and schedule of their projects.
Maturity level 1 organizations are characterised by a tendency to over commit, abandon processes in the time of crisis, and not be able to repeat their past successes again.
Level 1 software project success depends on having high quality people
Level 2 - Repeatable [Managed]
At maturity level 2, software development successes are repeatable. The processes may not repeat for all the projects in the organization. The organization may use some basic project management to track cost and schedule.
Process discipline helps ensure that existing practises are retained during times of stress. When these practises are in place, projects are performed and managed according to their documented plans.
Project status and the delivery of services are visible to management at defined points (for example, at major milestones and at the completion of major tasks).
Basic project management processes are established to track cost, schedule, and functionality. The minimum process discipline is in place to repeat earlier successes on projects with similar applications and scope. There is still a significant risk of exceeding cost and time estimates
Level 3 - Defined
The organization’s set of standard processes, which are the basis for level 3, are established and improved over time. These standard processes are used to establish consistency across the organization. Projects establish their defined processes by applying the organization’s set of standard processes, tailored, if necessary, within similarly standardised guidelines.
The organization’s management establishes process objectives for the organization’s set of standard processes, and ensures that these objectives are appropriately addressed.
A critical distinction between level 2 and level 3 is the scope of standards, process descriptions, and procedures. At level 2, the standards, process descriptions, and procedures may be quite different in each specific instance of the process (for example, on each particular project). At level 3, the standards, process descriptions, and procedures for a project are tailored from the organization’s set of standard processes to suit a particular project or organisational unit
Level 4 - Quantitatively Managed
Using precise measurements, management can effectively control the software development effort. In particular, management can identify ways to adjust and adapt the process to particular projects without measurable losses of quality or deviations from specifications. Organisations at this level set quantitative quality goals for both software process and software maintenance. Sub processes are selected that significantly contribute to overall process performance. These selected sub processes are controlled using statistical and other quantitative techniques. A critical distinction between maturity level 3 and maturity level 4 is the predictability of process performance. At maturity level 4, the performance of processes is controlled using statistical and other quantitative techniques, and is quantitatively predictable. At maturity level 3, processes are only qualitatively predictable
Level 5 - Optimising
Maturity level 5 focuses on continually improving process performance through both incremental and innovative technological improvements. Quantitative process-improvement objectives for the organization are established, continually revised to reflect changing business objectives, and used as criteria in managing process improvement. The effects of deployed process improvements are measured and evaluated against the quantitative process-improvement objectives. Both the defined processes and the organization’s set of standard processes are targets of measurable improvement activities.
Process improvements to address common causes of process variation and measurably improve the organization’s processes are identified, evaluated, and deployed
Six Sigma
Six Sigma is a disciplined, data-driven approach and methodology for eliminating defects (driving towards six standard deviations between the mean and the nearest specification limit) in any process -- from manufacturing to transactional and from product to service.
The fundamental objective of the Six Sigma methodology is the implementation of a measurement-based strategy that focuses on process improvement and variation reduction through the application of Six Sigma improvement projects. This is accomplished through the use of two Six Sigma sub-methodologies:
DMAIC
The Six Sigma DMAIC process (define, measure, analyse
DMADV
The Six Sigma DMADV process (define, measure, analyse, design, verify) is an improvement system used to develop new processes or products at Six Sigma quality levels. It can also be employed if a current process requires more than just incremental improvement.