Posts

Assertion

PURPOSE OF ASSERT IN A TEST AUTOMATION SUITE  Assert plays vital role in automation testing. Without assertion we cannot provide the status of the test cases passed, failed etc. Assertion is used to validate the status of a test case. Let's take an example of a login page where a user logged in through valid username , valid password and clicking the login button. With valid credential it should login to the home page successfully. Now that a user has been logged in successfully there should be some sort of commands which helps to validate the user has successfully logged in. Hence assertion comes into picture, where we can use assertion command to validate whether the user has been successfully logged in by comparing any text in the homepage with the text provided in the command. eg. Assert.assertEquals(expected, actual) Here if the actual and expected matches , then the test case will be marked as a passed.

Explicit Wait, Implicit Wait, Fluent Wait in Selenium using C#

What are Wait commands? Waits are the command in Selenium which is very useful for the execution of the automated test scripts. During execution of automated test script, there might be some situation where issues may occur due to variations in time lag for loading web elements. In these situation Wait commands helps in troubleshooting these issues. Wait commands helps in directing a test script to pause for a certain time before throwing exception. Types of  Wait Commands Selenium WebDriver provides three types of wait commands to implement in tests. 1. Implicit Wait 2. Explicit Wait 3. Fluent Wait Implicit Wait Implicit wait directs the Selenium WebDriver to wait for a certain measure of time before throwing an exception. Once this time is set, WebDriver will wait for the webelement before throwing exception. So by implicitly wait, the WebDriver will wait for certain duration to find any webelement. This can helpful when certain elements on the webpage are not available imme...

One Page Test Plan Template

Image
TEST PLAN Let's discuss what is a Test Plan? Test Plan is a document which describes the software testing scopes and the activities needed to perform. When we say about any testing activities to be carried out there should be a proper Test plan which helps us in having insights of what can be the different approaches, scope, resources, risk  etc to have a better understand of how we can plan to test a software product. So if incase we missed something or something goes wrong then we can refer back to the test plan document and we can identify what we have missed in the scope, testing coverage etc. This way it assist us in organising our thoughts. It helps us to better understand what is missing in the plan. ONE PAGE TEST PLAN TEMPLATE   Now a days with this busy world no one has that much of time to go through any lengthy documentation. Management doesn't have that much time to read a huge document, they want to know the most important things.  That's how One page test pl...

CI/CD Pipelines & DevOps

Image
CI/CD Pipelines & DevOps A CI/CD Pipeline implementation, or Continuous Integration/Continuous Deployment, is the backbone of the modern DevOps environment. It bridges the gap between development and operations teams by automating the building, testing, and deployment of applications. CI/CD is o ne of the best practices for DevOps teams to implement . It is also an  agile methodology  best practice, as it enables software development teams to focus on meeting business requirements, code quality, and security because deployment steps are automated. Before moving onto the CI/CD pipeline, let's start by understanding DevOps. DevOps is a software development approach which involves continuous development, continuous testing, continuous integration, continuous deployment, and continuous monitoring of the software throughout its development lifecycle. Let us now look at the DevOps lifecycle and explore how it is related to the software development stages.

Use case vs Test Case

Image
Difference between Use Case and Test Case So what is a Use case and a Test Case. These terms frequently used in the software testing field, which are also closely related. A use case is used to specify how to use the system designed for performing a specific task. As against, a test case is a group of test inputs, execution conditions, and expected results developed for a particular test objective. Furthermore, the use case does not run or execute as it is a textual or diagrammatic presentation of a document which specifies how to accomplish a certain task. Whereas, test cases are prepared by the software testers to validate the software and check whether it is working as per requirements or not. What is a Use Case? A  use case  is a description of how a person who actually uses that process or system will accomplish a goal .    It outlines, from a user’s point of view, a system’s behaviour as it responds to a request. Each use case is represented as a sequence of si...

STLC

Image
What is STLC? Software Testing Life Cycle (STLC)  is a sequence of different activities performed during the software testing process. 1. Requirement Analysis: During this phase, test team studies the requirements from a testing point of view to identify the testable requirements. 2. Test Planning: In this stage, a Senior QA manager will determine effort and cost estimates for the project and would prepare and finalize the Test Plan. 3. Test Case Development: In this phase involves the creation, verification and development of test cases & test scripts. 4. Environment Setup: Test environment decides the software and hardware conditions under which a work product is tested. 5. Test Execution During this phase, the testers will carry out the testing based on the test plans and the test cases prepared. 6. Test Cycle Closure: Testing team will meet, discuss and analyze testing artifacts to identify strategies that have to be implemented in the future, taking lessons from the curren...

SDLC Phases

1. Requirement Analysis: The requirement is the first stage in the SDLC process.  It is conducted by the senior team members with inputs from all the stakeholders and domain experts in the industry.  This stage gives a clearer picture of the scope of the entire project and the anticipated issues, opportunities, and directives which triggered the project. 2. Software Design:  In this phase system and software design documents are prepared as per the requirement specification document. T his helps define overall system architecture. There are two kinds of design documents developed in this phase: i. High-Level Design (HLD) ii. Low-Level Design(LLD) 3. Software Build: In this is phase, the code requirement o utlined previously will be taken and uses those to  build  the actual  software . 4. Testing: In this phase   The testing team starts testing the functionality of the entire system. This is done to verify that the entire application works according to...