{"id":7627,"date":"2020-02-18T14:27:29","date_gmt":"2020-02-18T08:57:29","guid":{"rendered":"https:\/\/www.argildx.us\/?p=7627"},"modified":"2020-02-28T14:14:03","modified_gmt":"2020-02-28T08:44:03","slug":"how-to-implement-full-software-testing-life-cycle-and-apply-testing-techniques","status":"publish","type":"post","link":"https:\/\/www.argildx.us\/technology\/how-to-implement-full-software-testing-life-cycle-and-apply-testing-techniques\/","title":{"rendered":"How to Implement Full Software Testing Life Cycle (STLC) and Apply Testing Techniques"},"content":{"rendered":"\n
Software Testing trends over the decades<\/strong><\/h5>\n\n\n\n
\"conversation<\/figure><\/div>\n\n\n\n
\"conversation<\/figure><\/div>\n\n\n\n
\"product<\/figure><\/div>\n\n\n\n

As we can see in the above images, the trend and competency of software testing have changed over the years. QA testers are now more technical and process oriented. In these changing times, testing has grown beyond just finding bugs into a wider scope. It is generally performed right from the inception of the project when the requirements are not even finalized.

Since testing processes have been standardized after the year 2000, it also has its own lifecycle just like the development team. In the world of testing, we call that lifecycle as STLC which will be explained in the following section.

Let’s start!  <\/p>\n\n\n\n

\"lines<\/figure><\/div>\n\n\n\n
What is a lifecycle in software testing?<\/strong><\/h5>\n\n\n\n

A lifecycle is nothing but the sequence of changes from one form to another form. These changes generally happen to any tangible or intangible things. Every entity has a lifecycle from its inception to retirement.

In a similar way, every software is also an entity. Testing also has a sequence of steps which should be executed in a definite sequence just like developing a software.

The process of executing the testing activities in a systematic and planned manner is called testing life cycle.  <\/p>\n\n\n\n

What is Software Testing Life Cycle (STLC)?<\/strong><\/h5>\n\n\n\n

STLC \u2013 Software Testing Life Cycle refers to a testing process which has certain steps to be executed in a sequence to ensure that the quality goals have been met in each phase. In STLC process, each activity or phase is carried out in a planned and systematic way. Every phase has different goals and deliverables. Different organizations might have different phases in STLC; however, the basis remains the same.

Below are the basic phases of STLC:<\/p>\n\n\n\n

  1. The Requirements phase<\/strong> \u2013 The teams are involved in finalizing the initial draft of requirements.
    <\/li>
  2. Planning Phase<\/strong> \u2013 Planning the resources and activities which will be involved in the project.
    <\/li>
  3. Analysis phase<\/strong> \u2013 Depicting the test scenarios and requirement clarifications if any.
    <\/li>
  4. The Design Phase<\/strong> \u2013 Designing of all the documents which will be used in the project.
    <\/li>
  5. Implementation Phase<\/strong> \u2013 Test writing and its prioritization and preparation of sanity and regression suites.
    <\/li>
  6. Execution Phase<\/strong> \u2013 The main phase where the actual execution takes place.
    <\/li>
  7. Conclusion or Closure Phase<\/strong> \u2013 Submit the metrics and reports. UAT with clients or closure activities to ensure the exit criteria is met. 

    Let’s take a look at each phase in detail.<\/li><\/ol>\n\n\n\n
    1. Requirement Phase:  <\/strong><\/h5>\n\n\n\n
    \"people<\/figure><\/div>\n\n\n\n

    During this phase of STLC, testing teams analyze and study the requirements. The testers usually conduct meetings to discuss the requirements with the business analysts’ team and all the stakeholders to see what is testable and what are the areas of focus. This phase of STLC helps to identify the scope of the testing. If any feature is not testable or has a dependency, then QA needs to communicate the same during this phase so that the mitigation strategy can be planned. It\u2019s a good practice to create diagrams and flow charts to understand the requirements and the user journey with the development team.  <\/p>\n\n\n\n

    2. Planning Phase<\/strong><\/h5>\n\n\n\n
    \"a<\/figure><\/div>\n\n\n\n

    In general, the test planning is supposed to be the first step of the testing process. In this phase, we identify the various activities and resources which would help to meet the testing objectives. It is in this phase where the testing team decides the reporting structure and the tools to be used like Defect Management Tool, Test Case management tools, automation tools, etc. Test plan and test strategy document are also created in this phase and how to implement this practice is explained in the 6th<\/sup> QA practice of this article<\/u><\/a>.  <\/p>\n\n\n\n

    3. Analysis Phase<\/strong><\/h5>\n\n\n\n
    \"a<\/figure><\/div>\n\n\n\n

    This STLC phase, in my opinion, should be the most important phase as it defines \u201cWHAT\u201d to be tested. We must identify the test scenarios through the requirements document, product risks and other test basis. The test scenarios should be traceable back to the requirement.

    How to write efficient test scenarios are explained
    here<\/u><\/a>.  <\/p>\n\n\n\n

    4. Design Phase<\/strong><\/h5>\n\n\n\n
    \"silhouette<\/figure><\/div>\n\n\n\n

    In this phase, we define the various ways and mediums through which we will conduct the test. This phase involves the following tasks:  <\/p>\n\n\n\n