Sunday, October 25, 2020

Handling frames!!!


Developing page inside another web page is called 'Embedded web page' or 'Nested web page'. To develop the frame, developer will use frame tag.
If the element is present inside the frame if we want to perform action on the element, first we should switch control from page to frame by using below statement:
driver.switchTo().frame();

frame() is overloaded i.e., frame(int arg()) ---- By index
                                          frame(String arg()) -By ID
                                          frame(WebElement args())-By frame element
To switch back control from frame to page , we use below statement:
driver.switchTo().defaultContent();

Important point to deal with frames:
1.To switch from control from child frame to parent frame, we use
    driver.switchTo().parentframe();
2.To verify whether element is inside the frame, right click on element and check whether it displays 
    frame option, if it is then element is present inside the frame.
3.Before switching the control from page to frame, if we perform then we get 
   "NO SUCH ELEMENT EXCEPTION" 
4. If the selenium code is unable to find the frame on the web page to switch i.e., if the driver is                  switching  to invalid frame we get "NO SUCH FRAME EXCEPTION".

Thanks for reading!!!
Happy Testing!!!

Friday, October 16, 2020

Alpha, Beta & Gamma Testing!!!

 In this article, let us see Alpha , Beta & Gamma Testing.

1. Alpha Testing : 

It is a type of testing done by tester before releasing product or software to the market.

There are three types of Alpha testing:

1. Pre-Alpha Testing : Testing all the features at the high level & check whether the product is eligible        for next level of testing.

2. Alpha Testing : Thorough & Rigorous Testing like Functional Testing , Integration Testing &                  System testing.

3. Post-Alpha Testing : Requirements will be freezed, developers will be fixing the defects & Tester            will be testing the defects.

2. Beta Testing : 

It is a type of testing done by the Tester or end users or customers once after software is released to the market.

3. Gamma Testing : 

It is the third stage of software testing which is done by sometimes after Beta Testing & before commercial release of software to the customer.

Thanks for reading!!!!

Happy Testing!!!!

Tuesday, October 13, 2020

Difference between Retesting and Regression Testing!!!!

In this article will see the difference between Retesting and Regression Testing.

First let us see the definition.

1. Retesting:

    When developer give the build, check whether the defect is fixed or not is called as Retesting.

    It is also called as Confirmation Testing.

2. Regression Testing:

    Testing the unchanged feature or re-execution of same test cases to confirm that adding feature,  

    modifying feature, deleting feature is not impacting old features is called as Regression Testing.

Below are the differences:

Retesting

Regression Testing

Retesting is done for failed test cases.

Regression testing is done for passed test cases.

It is planned testing.

It is generic testing.

Here, we can't go for automation.

Here, we can go for automation.

It takes highest priority.

Takes less priority compared to retesting.


Thanks for reading!!!!
Happy Testing!








Monday, October 12, 2020

Verification & Validation!

Verification & Validation...🤔

What they really means?

Verification: Verifying/Testing Customer Requirement Specification, System Requirement Specification , High Level Design, Low Level Design and also check whether it is according to the requirement or not, is called as Verification. It is done before software is developed.

Here we ensure that "Are we building product right/software right/system right".

Validation: Testing the functionality of an application by executing test cases is called as Validation. It is done once the software is developed.

Here we ensure that "Are we building right product/right software/right system".

Thanks for reading this Blog!!!!

Wednesday, October 7, 2020

Different Domain Knowledge for Testers!!!

 We have many domains like Automobile, Ecommerce, banking etc. As we testers should understand basics of domain which we work and also others. I was searching how to get that and found few links created by Inder P Singh which helped me to get overview of ecommerce, Banking, automobile industry.



Below are the links to watch:

For Banking Domain knowledge: Banking Domain Knowledge

For Automobile Domain knowledge : Automobile Domain Knowledge

For  Ecommerce Domain knowledge: Ecommerce Domain Knowledge

For Telecom Domain knowledge : Telecom Domain Knowledge

I know actual domain and application knowledge will be getting when we work and understand. Hope it helps someone who wants to know basics of different Domain knowledge as we all will not get chance to work on all.

Thanks for reading, hope you liked it.

Happy Blogging!!!!!!

Monday, September 28, 2020

Printing Alphabets in Java!

 Here is the program to print all the alphabets in Java:

public class Alphabets {

      public static void main(String[] args) {

                  for(char i='a';i<='z';i++){

System.out.print(i+",");

                   }

        }

 }

Console Output:



Thursday, September 24, 2020

Types of defects!!!!

As we all test the software in order to find defects, we also need to know types of defects.

There are many types of defects in general.

1.Functionality defects

2.Compatibility defects

3. Cosmetic defects

4. Performance defects

5. Security defects

6. Database defects

7. Wrong implementation defects

8. Missing implementation defects

9. Blocker defects

10.Major defects

11.Critical defects

12.Minor defects

These are few of the types of defects which I came across.


Happy Blogging!!!!

Sunday, September 6, 2020

Error,Defect,Bug and Failure!!!

Let us see the difference between Error, Defect,Bug and Failure.

Error: Mistakes done by developers in the code because of which we will not be able to run the code or compile the code is called as Error.
Example: System.out.println("Hello);

Defect: Error found in the application is called as Defect.

Bug: Bug is an informal name given to the defect and also defect accepted by the developers is called as Bug.

Failure: Many defect/Bugs present in the software leads to failure. If a build is not working according to the customer requirement specification leads to failure.

Happy Software Testing!!!!!

Saturday, September 5, 2020

Test Scenario & Test Case!!!!!

Test Scenario and Test Case are the most important and commonly used terms in Software Testing.

In simple terms and sentences we see both the terms as,

What is Test Scenario?

Test Scenario is a high level documentation of all the customer business work flows according to the requirement. By looking into the test scenario we can not test any project or application until and unless we have very good project/product knowledge.

Example : For Whatsapp application, Open Whatsapp, click on Chats, Open a chat, Click on Search and enter any letters, it should be highlighted.

What is Test Case?

Test Case is a detailed documentation of scenario which helps to Tester to test the application. By looking into testcases, we can test any project or any application without having product knowledge because it will be in detail.

Example: For the above scenario,

                 Step:1: Open Whatsapp

                 Step:2: Click on Chats

                 Step:3: Open a Chat

                 Step:4: Enter letter 'A'

                 Step:5: Check whether the text containing 'A' are highlighted or not.

While writing test cases, all the details will be provided like test data, expected result to compare and step by step test steps.

Thanks for reading my Blog!!!

Happy Software Testing!!

Wednesday, September 2, 2020

Software Test Life Cycle!!!!

Software Testing is an investigation conducted to provide stakeholders with information about the quality of the software. It is a process which involves the execution of a software or system to check whether the software is working as expected.

Software Testing mainly focuses whether the developed system meets the customer/stakeholder’s expectations. Software Testing itself has many phases and it is called as STLC. STLC is a part of Software Development Life Cycle. SDLC has many phases and STLC is a part of it.

Below flow diagram shows the different phases of STLC:

Requirements is the input to STLC. Software Testing starts with Requirements, firstly Requirements will be studied by entire team that is called as System Study. After the first two phases, Test Plan will be created to understand the scope of Testing. Once after Test Plan is created, detailed Test cases will be written / created. Traceability Matrix will be created to ensure each requirement is covered with the test cases. Test Execution and Defect Tracking will be done if there are any defects. Once all the test cases are executed and finished. Then Test Execution report will be created and retrospect meeting will be conducted to discuss about what went well and what didn’t go well.

We will see all the phases in detail below:

1.Requirements:

            The very first is Requirements and it is the input for Testing. It is the phase where Software Testing starts. Requirements will be discussed with the entire team.

    2. System Study:

           The requirements given in first phase will be deeply studied and process starts with writing Test Plan. 

3.Write Test Plan:

Test Plan is a document which derives all the Testing activities of the project. All the future Testing activities will be planned and document in this and it is known as Test Plan.

It contains below information usually:

   Number of Testers needed.

   Who should Test which module and which feature.

   Which will be the Defect Tracking tool.

   Start and End Dates of writing Test Cases and Execution planned dates.

   Scope of Testing

4.Write Test Cases:

    In this phase, Test Cases will be created. These Test Cases will be reviewed and after all review comments are updated and once the test cases are approved, they will be stored in a Test Case repository.

5.Traceability Matrix:

Traceability matrix is a document which ensures that every requirement has a test case. Test cases are written by referring to the requirements and test cases are executed by using them.

If any requirement is missed and test cases are not created for that particular requirement, then testing will not be done for that module /feature. To make sure that all the requirements are having at least one test case.

6.Defect Tracking:

Bug/ Defect found by QA team is sent to the development team. This should be followed up by QA team until it is fixed and if it is really fixed then need to do Retesting and also Regression Testing based on the need and defect should be closed.

7.Test Execution Report:

It is a report generated once Testing is completed. Usually it is prepared after every Test Cycle and sent to Development team, Testing team, Management team and also sometimes Customer.

The last Test Execution report will be sent to customer and this means that project is over.It contains below information usually:

        List of Bugs

        Summary of Test Cases passed and failed.

        Summary of Deferred Test Cases

8.Retrospect Meeting:

     It is also called as Post Mortem meeting or Project Closure Meeting. It is conducted to discuss the achievements and mistakes in the project. “What went well” and What didn’t go well” will be discussed and document in Quality Management System under Retrospect folder.

These are the various phases of STLC generally.

Thanks for reading my Blog.

Happy Testing!!!!


Friday, August 21, 2020

SEVERITY & PRIORITY OF A BUG😎!!!

Severity and Priority of a Bug are the mandatory fields of a Bug Report because these two fields helps to  decide how quickly a bug should be fixed.

What is Severity?

Severity is the impact of the bug on customer's business and tells how severe the bug is and the impact of the bug.

What is Priority?

Priority defines how soon the defect should be fixed.It defines the importance of the bug.

Generally, Severity is assigned by Tester/Test Lead and priority is assigned by Developer/Project Lead.It requires whole team to decide. Development team will fix the High Priority Bugs first rather than high Severity.

Examples of Different Combinations:

High Priority & Low Severity: Logo of the company or brand ,it won't cause lot of damage but need to be fixed as soon as possible.

High Priority & High Severity: In an Ecommerce website, 'Submit' button is not working.When user enters all the information and clicks on 'Submit' button , it throws error.

Low Priority & Low Severity: Spelling mistakes , a page is taking more time to load than usual.

Low Priority & High Severity: Browser compatibility issues

These are only the examples, in real time whole team will decide these two fields as per the application and business flows.

Happy Software Testing!!!!!!

Thursday, August 20, 2020

HTTP Requests....???

What are HTTP Requests...🤔


The requests that the browser sends to the Web Server are HTTP requests. In simple terms, it is a way of sending messages between two machines over the internet.
HTTP stands for Hyper Text Transfer Protocol.

Any HTTP request consists of below components:
1. Type of Request:
     It consists of whether it is GET, POST, PUT or DELETE.
2. HTTP Headers:
     Headers specify information such as type of browser, type of content in the message and what type of response we receive in return.
3. Body/Payload:
    It consists of information sent to / from the web application. 
    Only POST and PUT have payloads where as GET and DELETE cannot have payload.

Thanks for reading!!
Happy Blogging!!!!! 

Wednesday, August 19, 2020

What is Web Application???

What is Web Application?

In simple terms, Web Application is  a software application that is deployed to a web server. Users can access the application via a web server.
For example , www.facebook.com is a web application. User visits facebook.com in any of the browser and 'Login' page is displayed in the browser. GUI consists of 'Email id' and 'Password' input text fields. When user enters the valid credentials and clicks on 'Login/SignIn' button, if credentials are valid then 'Home' page is displayed.
When user clicks on 'Login' button, the browser makes a request to the web application on the web server to display home page.

Flow: WebBrowser----->sends request to web application----->Web Application---->validates credentials & processes request----->sends a web page as response  to web browser----->WebBrowser