SDET- QA Automation Techie

Full Stack QA Automation Testing Blog

  • Home
  • Training
    • Online
    • Self-Paced
  • Video Tutorials
  • Interview Skills
    • HR Interview Questions Videos
    • Domain Knowledge
  • Career Guidance
  • Home
  • Software Testing
    • Manual Testing Tutorials
    • Manual Testing Project
    • Manaul Testing FAQS
    • ISTQB
    • AGILE
  • Web Automation Testing
    • Java Programmng
    • Python Programmng
    • Selenium with Java
    • Selenium with Python
    • Robot Framework(Selenium with Python)
    • selenium with Cucumber
    • TestNG+IntelliJ
    • Mobile App Testing(Appium)
    • JMeter
  • API Automation Testing
    • Rest Assured API Testing (BDD)
    • Rest Assured API Testing (Java+ TestNG)
    • Robot Framework(Rest API Testing with Python)
    • Postman
    • SoapUI
    • API Testing(FAQ's)
  • SDET|DevOps
    • Continuos Integration
    • SDET Essentials
    • AWS For Testers
    • Docker
  • SQL
    • Oracle(SQL)
    • MySQL for Testers
    • NoSQL
  • Unix/Linux
    • UNIX TUTORIALS
    • Linux Shell Scripting
  • ETL Testing
    • ETL Data warehouse Tutorial
    • ETL Concepts Tools and Templates
    • ETL Testing FAQ's
    • ETL Testing Videos
  • Big Data Hadoop
  • Video Tutorials
  • ApachePOI Video Tutorials
  • Downloads
    • E-Books for Professionals
    • Resumes
  • Automation Essencials
    • Cloud Technologies
      • Docker For Testers
      • AWS For Testers
      • Sub Child Category 3
    • Java Collections
    • Selenium Locators
    • Frequently Asked Java Programs
    • Frequently Asked Python Programs
    • Protractor
    • Cypress Web Automation

Software Testing Methodologies

 Agile Testing, GUI Testing Checklist, Software Testing   


Software Testing Methodologies and Techniques You Should Know



This post lists and explains the most popular software testing methodologies and techniques that are important to know for all software testing.

AGILE SOFTWARE DEVELOPMENT




Agile Software Development

Agile development methods tend to promote teamwork and collaboration. The agile development process isn’t sequential (code, test, debug, release), like traditional development processes; nor is it iterative; it combines concepts of both.

Twelve principles underlie the Agile Manifesto, including:

• Customer satisfaction by rapid delivery of useful software

• Welcome changing requirements, even late in development.

• Working software is delivered frequently (weeks rather than months)

• Working software is the principal measure of progress

• Sustainable development, able to maintain a constant pace

• Close, daily cooperation between businesspeople and developers

• Face-to-face conversation is the best form of communication (co-location)

• Projects are built around motivated individuals, who should be trusted

• Continuous attention to technical excellence and good design

• Simplicity

• Self-organizing teams

• Regular adaptation to changing circumstances

CLEANROOM SOFTWARE ENGINEERING

The Cleanroom Software Engineering process is a software development process intended to produce software with a certifiable level of reliability:

• Cleanroom development uses on formal methods in the design and specification of a software product. A team verifies that the design correctly implements the spec.

• Development and testing is done using an iterative approach, where functionality is added to the product incrementally (as opposed to creating all of the functionality first, THEN testing it).

• Software testing is performed as a statistical experiment.

ITERATIVE SOFTWARE DEVELOPMENT





Iterative Software Development

Iterative development is at the heart of a cyclic software development process; it starts with an initial planning and ends with deployment with the cyclic interactions in between.

Iterative development is NOT the same thing as incremental development, although the two methodologies do complement each other.

Two steps are involved in iterative development:

• Initialization: Creates a base version of the system.

• Iteration: The current version of the system is analyzed, and is redesigned and implemented based on the Project Control list.

RAPID APPLICATION DEVELOPMENT (RAD)

In place of extensive planning, RAD makes heavy use of prototyping.

In Rapid Application Development, structured techniques and prototyping are especially used to define users’ requirements and to design the final system. The development process starts with the development of preliminary data models and business process models using structured techniques. In the next stage, requirements are verified using prototyping, eventually to refine the data and process models. These stages are repeated iteratively.

RATIONAL UNIFIED PROCESS (RUP)

The Rational Unified Process is a framework intended to be customized by software development teams, for their individual needs. It was created by Rational Software (which is now part of IBM).

RUP emphasises six best practices for modern software engineering:

1. Develop iteratively, with risk as the primary iteration driver

2. Manage requirements

3. Employ a component-based architecture

4. Model software visually

5. Continuously verify quality

6. Control changes





Rational Unified Processing

SPIRAL SOFTWARE DEVELOPMENT

The Spiral Model is an iterative model that attempts to combine advantages of the top-down and bottom-up models of software design.



Spiral Software Development

The system requirements are defined in as much detail as possible. This usually involves interviewing a number of users representing all the external or internal users and other aspects of the existing system.

• A preliminary design is created for the new system. This phase is the most important part of the Spiral Model.

• A first prototype of the new system is constructed from the preliminary design.

• A second prototype is evolved by a fourfold procedure:

1. evaluating the first prototype in terms of its strengths, weaknesses, and risks;

2. defining the requirements of the second prototype;

3. planning and designing the second prototype;

4. constructing and testing the second prototype.

WATERFALL SOFTWARE DEVELOPMENT



Waterfall Software Development

The waterfall model is a sequential design process comprised of the following steps, each of which must be completed before the next starts:

1. Design

2. Construction/implementation

3. Integration

4. Testing/debugging/validation)

5. Installation

6. Maintenance

XP



Extreme Programming

Extreme Programming (XP) is intended to improve software quality and responsiveness to changing customer requirements. by advocating frequent “releases” in short development cycles, which is intended to improve productivity and introduce checkpoints where new customer requirements can be adopted. Features are not added until they are actually needed. Extreme Programming also encourages programming in pairs, along with frequent communication between members of the development team, and between the developers and clients.

Lean

Lean development could be summarized by seven principles, very close in concept to lean manufacturing principles.

Everything not adding value to the customer is considered to be waste, including:

• unnecessary code and functionality

• delay in the software development process

• unclear requirements

• bureaucracy

• slow internal communication

In order to be able to eliminate waste, one should be able to recognize and see it. If some activity could be bypassed or the result could be achieved without it, it is waste. Partially done coding eventually abandoned during the development process is waste. Extra processes and features not often used by customers are waste. Waiting for other activities, teams, processes is waste. Defects and lower quality are waste. Managerial overhead not producing real value is waste.

Scrum

Scrum is an iterative methodology used in agile software development.

During each “sprint”, typically a two to four week period (with the length being decided by the team), the team creates a potentially shippable product increment (for example, working and tested software). The set of features that go into a sprint come from the product “backlog”, which is a prioritized set of high level requirements of work to be done. Development is timeboxed such that the sprint must end on time; if requirements are not completed for any reason they are left out and returned to the product backlog. After a sprint is completed, the team demonstrates how to use the software.

V-Model



V-Model

The V-model is a software development process which may be considered an extension of the waterfall model. Instead of moving down in a linear way, the process steps are bent upwards after the coding phase, to form the typical V shape. The V-Model demonstrates the relationships between each phase of the development life cycle and its associated phase of testing.

TDD

Test-driven development (TDD) is a software development process that relies on the repetition of a very short development cycle: first the developer writes a failing automated test case that defines a desired improvement or new function, then produces code to pass that test and finally refactors the new code to acceptable standards.




  • Share This:  
  •  Facebook
  •  Twitter
  •  Google+
  •  Stumble
  •  Digg
Email ThisBlogThis!Share to TwitterShare to Facebook
Newer Post Older Post Home
popup

Popular Posts

  • How To Explain Project In Interview Freshers and Experienced
    “ Describe an important project you’ve worked on ” is one of the most common questions you can expect in an interview. The purpose of a...
  • API/Webservices Testing using RestAssured (Part 1)
    Rest Assured : Is an API designed for automating REST services/Rest API's Pre-Requisites Java Free videos: https://www.you...
  • MANUAL TESTING REAL TIME INTERVIEW QUESTIONS & ANSWERS
    1. How will you receive the project requirements? A. The finalized SRS will be placed in a project repository; we will access it fr...

Facebook Page

Pages

  • Home
  • Resumes
  • Job Websites India/UK/US
  • ISTQB
  • Selenium with Java
  • E-Books for Professionals
  • Manual Testing Tutorials
  • Agile Methodology
  • Manual Testing Projects

Live Traffic

YouTube


Blog Visitors

Copyright © SDET- QA Automation Techie | Powered by Blogger
Design by SDET | Blogger Theme by | Distributed By Gooyaabi Templates