Task 1:Testing methodologies and SDLC(Learners notes)
Published: 2024-03-09 19:25:43

**What are different types of testing?**

1.Functional Testing :Testing which Focuses on the functional Aspects of the running application.Black Box ,Unit testing ,Integration ,Smoke,Sanity,UAT testing

2.Non functional testing :Testing which is mainly focusing on the Non functional elements such as UI design ,Compatability,Responssiveness ,Seccurity ,Performance etc.

3.White Box testing :Testing  in which Tester should know the Internal structure of the application that runs.Mainly developer will do the white box testing sometimes Testers also in SDLC role.
Unit testing is one of the White box testing.

4.Black box testing : Testing in which Tester doesnt have the knowledge about the internal part.Tester only knows the inputs and outputs,testing conducted based on the expected outcome.User acceptance Testing is one of the Blackbox testing.

5.Grey box Testing : It is the combination of both black box and white box testing.Both end users and developer with partial knowledge of the source code.

6.Sanity Testing : It is a subset of UAT testing.It is done to ensure that code changes that are made are working as expected.IF any critical bug fixing is conducted sanity testing will be done immdediately.

7.Smoke Testing : It is a Rapid testing technique,used to validate whether the build is testable or not.or it can be used for further testing procedures.Subset of Regression testing.
End user as well as testers will do the smoke tests.
Black box is one of the smoke test.EX:Login Functionality of Irctc Website to book tickets.

8.Unit testing : It is done by athe developers and in some cases testers also. Basic leavel of testing.

9.Integration Testing : once the API integration is completed module wise Integration testing will conduct.Testers will do.

10.System Testing : Complete application will be tested based on the userstories or With its functional aspects.

11.Retesting : Retesting will be conducted during testing life cycle to ensure that the reported bug that have been fixed or not.

12.Regression Testing : It is done to ensure that the updations or code changes that are made doesnt effect the other functionalities or previously deployed part.

13.User acceptance testing :It is done by the end users or by the client according to their bussiness requirements.

14.Security Testing : It is done to ensure the vulnurabilities that are fixed to deliver a quality and customer satisfied product.

15.Compatibility Testing :It is done to ensure that cross platform browsing,compatible with different os versions and devices.

16.Performance Testing : Load testing ,stress testing etc.
It is done to make sure that the system is communicating friendly with larger scale customers and data without any crash.

 **Q2 .What are different STLC phases?**

STLC stands for Software development Life cycle.

Phases:
1. Requirement analysis Phase
    Reviewing the SRS documentation and quality assurance team understands the requirements well like what is to be tested. If anything is missing or not understandable then the quality assurance team meets with the Development team/Bussiness Analyst/Tech Lead to better understand the detailed knowledge of the requirements.
    Identify the ambiguities,
    Identifying any missing or incomplete requirements,
    Identifying any missing or incomplete requirements,     
2.Test Planning
     Identifies the objectives and scope of the test.
     Developing a test strategy like testing methods and 
     techniques that will be used (agile method).
     Identifies the testing environment and resources needed.
     Identifies the test cases that will be executed.(RTM,Requirement tracebility matrix )and the test data that will be used.
     Estimating the time and cost required for testing.
     Identifies the test deliverables.
     Assigning the roles and responsibilities to the testing team,
     Reviewing and approving the test plan.
3.Test Case development 
    Based on the requirement Tracebility matrix Test cases will be Mapped/prepared.
   The testing team also prepares the required test data/Scenarios for the testing.
   Test cases that are clear, concise, and easy to understand.
   Identifying the expected results for each test case.
   Reviewing and validating the test cases.
4.Test Environment Setup
    Once software test suites(Test cases) are designed, they need an interface to be executed in.This interface is called the Test Environment.It is created by integrating hardware,software,proper network configurations and data necessary to run tests. 
Mostly decided by the developer end or as per client requirement.
5.Test Execution
         In this phase testing team starts executing test cases based on prepared test cases.
Once defect Logged in and FIxed by the developer Retest the same with test data and repot the result.
6.Test Closure
         Test closure stage is to ensure that all testing related activities have been completed and that the software is ready for release.And alsso it is to ensure that all relevent information related to testing that have been shared for future reference and enhancement.

**4.As a manual Tester what qualities do you posses?Illuistarte with example?**
       For every business customer satisfaction is the main achievement.A quality product delivers this.so that a tester should have to analyse the things as a normal user along with the business goals to achieve.then only can deliver a quality product.
As a manual tester I should be best critic.
Good communication and good understanding of the current trends in the market.
Good logical and analytical problem solving skill.
Effective communication is the key thing to collaborate with the team and deal the situations and ideas within the team.then only can share  different aspects of test deliverables
Testers communication skill helps to easy understanding of  test cases and clear and presise defect report.
Example if the bug report is not easily understandable or confusing means developers can't fix the exact problem.chances to misunderstand the issues and there will arise a lack of communication.
Always be alert on testing example the design issues and keep testing to check their is any crash occurs .Continuos testing can only find out those minute but high severity issues.

****Q5.What is the difference between waterfall and agile methodologies?****

Waterfall model 
1)The process is divided into specifict/Distinct phases.
2)Sequential development methodology.
3)Waterfall is a structured software development methodology so most times it can be quite rigid.
4)Software development will be completed as one single project.
5)There is no scope of changing the requirements once the project development starts.
6)All the project development phases like designing, development, testing, etc. are completed once in the Waterfall model.
7)The test plan is rarely discussed during the test phase.
8)In this methodology, the “Testing” phase comes after the “Build” phase.
9)Team coordination/synchronization is very limited.
10)Business analysis prepares requirements before the beginning of the project.

Agile model
1) It separates the phases into sprints
2)It involves incremental approach
3)Agile methodology is more flexible to work.
4)Agile can be considered as a collection of many different projects.
5)Agile is quite a flexible method which allows changes to be made in the project development requirements even if the initial planning has been completed.
6)Agile methodology, follow an iterative development approach because of this planning, development, prototyping and other software development phases may appear more than once.
7)Test plan is reviewed after each sprint.
8)In Agile methodology, testing is performed concurrently with software development.
9)Prefers small but dedicated teams with a high degree of coordination and synchronization.
10)Products owner with team prepares requirements just about every day during a project.