As test phases start moving ahead environment reality becomes more important. For example, while unit testing, you need the environment to be partly real, but at the acceptance phase you should have a 100% real environment, or we can say it should be the actual real environment.
Posted Date:- 2021-10-31 23:38:21
Testing is always done after the build and execution phases Earlier we catch a defect, the more cost effective it is. For example, fixing a defect in maintenance is ten times more costly than fixing it during execution.
Posted Date:- 2021-10-31 23:34:26
The following syntax can be used to launch the Browser:
WebDriver driver = new FirefoxDriver();
WebDriver driver = new ChromeDriver();
WebDriver driver = new InternetExplorerDriver();
Posted Date:- 2021-10-31 23:33:08
Selenium Grid can be used to execute same or different test scripts on multiple platforms and browsers concurrently so as to achieve distributed test execution, testing under different environments and saving execution time remarkably.
Posted Date:- 2021-10-31 23:32:05
XPath also called as XML Path is a language to query XML documents. It is an important strategy to locate elements in selenium. It consists of a path expression along with some conditions. Here, you can easily write XPath script/query to locate any element in the webpage. It is designed to allow the navigation of XML documents, with the purpose of selecting individual elements, attributes, or some other part of an XML document for specific processing. It also produces reliable locators.
Posted Date:- 2021-10-31 23:30:28
The things that have to be taken in considerations are
* Is your project on schedule
* Are you over budget
* Are you working towards the same career goal
* Have you got enough resources
* Are there any warning signs of impending problems
* Is there any pressure from management to complete the project sooner
Posted Date:- 2021-10-31 23:26:02
To estimate your project, you have to consider the following points
* Divide the whole project into the smallest tasks
* Allocate each task to team members
* Estimate the effort required to complete each task
* Validate the estimation
Posted Date:- 2021-10-31 23:23:24
It helps you to eliminate product risk in your project, and there is a simple yet crucial step that can reduce the product risk in your project.
Investigate the specification documents
Have discussions about the project with all stakeholders including the developer
As a real user walk around the website
Posted Date:- 2021-10-31 23:21:57
Selenium is an open source tool which is used for automating the tests carried out on web browsers. Since Selenium is open-source, there is no licensing cost involved, which is a major advantage over other testing tools. Other reasons behind Selenium’s ever-growing popularity are:
* Test scripts can be written in any of these programming languages: Java, Python, C#, PHP, Ruby, Perl &.Net.
* Tests can be carried out in any of these OS: Windows, Mac or Linux.
* Tests can be carried out using any browser: Mozilla Firefox, Internet Explorer, Google Chrome, Safari or Opera.
* It can be integrated with tools such as TestNG & JUnit for managing test cases and generating reports.
* It can be integrated with Maven, Jenkins & Docker to achieve Continuous Testing.
Posted Date:- 2021-10-31 23:20:40
The parameter used in software testing to describe the extent to which the source code is tested is known as coverage. There are three basic types of coverage techniques and they are:
1. Statement coverage: It ensures that each line of source code has been executed and tested.
2. Decision coverage: It assures that every decision (true/false) in the source code has been executed and tested.
3. Path coverage: Here we ensure that every possible route through a given part of the code is executed and tested.
Posted Date:- 2021-10-31 23:17:19
Basically, the acceptance document is prepared using the following inputs.
* Requirement document: It specifies what exactly is needed in the project from the customers perspective.
* Input from the customer: This can be discussions, informal talks, emails, etc.
* Project plan: The project plan prepared by the project manager also serves as good input to finalize your acceptance test.
Posted Date:- 2021-10-31 23:15:18
When the presence of one defect hides the presence of another defect in the system, it is known as fault masking.
Example: If the “Negative Value” cause a firing of unhandled system exception, the developer will prevent the negative values input. This will resolve the issue and hide the defect of unhandled exception firing.
Posted Date:- 2021-10-31 23:13:39
For the risk analysis following steps need to be implemented
1. Finding the score of the risk
2. Making a profile for the risk
3. Changing the risk properties
4. Deploy the resources of that test risk
5. Making a database of risk
Posted Date:- 2021-10-31 23:10:36
Mutation testing is a technique to identify if a set of test data or test case is useful by intentionally introducing various code changes (bugs) and retesting with original test data/ cases to determine if the bugs are detected.
Posted Date:- 2021-10-31 23:08:17
Phantom is a freeware and is used for windows GUI automation scripting language. It allows us to take control of windows and functions automatically. It can simulate any combination of keystrokes and mouse clicks as well as menus, lists and more.
Posted Date:- 2021-10-31 23:06:18
To know the quality of test execution, we can use two parameters
* Defect reject ratio
* Defect leakage ratio
Posted Date:- 2021-10-31 23:04:34
Latent defect: This defect is an existing defect in the system which does not cause any failure as the exact set of conditions has never been met.
Posted Date:- 2021-10-31 23:03:47
Possible differences between retesting and regression testing are as follows:
1. We perform retesting to verify the defect fixes. But, the regression testing assures that the bug fix does not break other parts of the application.
2. Regression test cases verify the functionality of some or all modules.
3. Regression testing ensures the re-execution of passed test cases. Whereas, retesting involves the execution of test cases that are in a failed state.
4. Retesting has a higher priority over regression. But in some cases, both get executed in parallel.
Posted Date:- 2021-10-31 23:01:54
If the standard documents like System Requirement Specification or Feature Description Document are not available, then QAs may have to rely on the following references, if available.
* Screenshots
* A previous version of the application
* Wireframes
Another reliable way is to have discussions with the developer and the business analyst. It helps in solving the doubts, and it opens a channel for bringing clarity on the requirements. Also, the emails exchanged could be useful as a testing reference.
Smoke testing is yet another option that would help verify the main functionality of the application. It would reveal some very basic bugs in the application. If none of these work, then we can just test the application from our previous experiences.
Posted Date:- 2021-10-31 23:00:00
Difference between test scenarios and test cases is that
Test Scenarios: A Test Scenario is any functionality that can be tested. It is also called Test Condition or Test Possibility.
Test Cases: It is a document that contains the steps that have to be executed; it has been planned earlier.
Test Script: It is written in a programming language and it’s a short program used to test part of the functionality of the software system. In other words a written set of steps that should be performed manually.
Posted Date:- 2021-10-31 22:59:02
* Record: Log and handle any problems which have happened
* Report: Report the issues to higher level manager
* Control: Define the issue management process
Posted Date:- 2021-10-31 22:58:16
It is suggested to perform a regression testing and run tests for all the other modules as well. Finally, the QA should also carry out a system testing.
Posted Date:- 2021-10-31 22:56:08
If the required specifications are not available for a product, then a test plan can be created based on the assumptions made about the product. But we should get all assumptions well-documented in the test plan.
Posted Date:- 2021-10-31 22:54:20
Here are the two principal reasons that make it impossible to test a program entirely.
1. Software specifications can be subjective and can lead to different interpretations.
2. A software program may require too many inputs, outputs, and path combinations.
Posted Date:- 2021-10-31 22:53:07
End-to-end testing is a testing strategy to execute tests that cover every possible flow of an application from its start to finish. The objective of performing end-to-end tests is to discover software dependencies and to assert that the correct input is getting passed between various software modules and sub-systems.
Posted Date:- 2021-10-31 22:50:34
Web application is a means to communicate and exchange information with customers. Unlike any desktop applications which are executed by an operating system, a web application runs on a web server and is accessed by a web browser that acts as a client.
The best example of a web application is ‘Gmail’. In Gmail, the interaction is done by an individual user and is completely independent of the others. You can send and receive information through emails and also through attachments.
You can maintain documents in a drive, maintain spreadsheets in Google docs and includes much more such features which make a user realize that they have an environment which is customized to their specific identity.
Posted Date:- 2021-10-31 22:49:20
Verifying the critical (important) functionality of the software on a new build to decide whether to carry further testing or not is termed as Sanity Test.
Posted Date:- 2021-10-31 22:47:56
1. Retesting: It is a process of checking bugs that are actioned by the development team to verify that they are fixed.
2. Data Driven Testing (DDT): In data driven testing process, the application is tested with multiple test data. The application is tested with a different set of values.
Posted Date:- 2021-10-31 22:47:16
System Testing: System testing is finding defects when the system undergoes testing as a whole; it is also known as end-to-end testing. In such type of testing, the application suffers from beginning till the end.
UAT: User Acceptance Testing (UAT) involves running a product through a series of specific tests which determines whether the product will meet the needs of its users.
Posted Date:- 2021-10-31 22:46:14
Test design, scope, test strategies, approach are various details that Test plan document consists of.
1. Test case identifier
2. Scope
3. Features to be tested
4. Features not to be tested
5. Test strategy & Test approach
6. Test deliverables
7. Responsibilities
8. Staffing and training
9. Risk and Contingencies
Posted Date:- 2021-10-31 22:45:44
It is one of the white-box testing techniques.
Data flow testing emphasizes for designing test cases that cover control flow paths around variable definitions and their uses in the modules. It expects test cases to have the following attributes:
1. The input to the module
2. The control flow path for testing
3. A pair of an appropriate variable definition and its use
4. The expected outcome of the test case
Posted Date:- 2021-10-31 22:44:40
Agile testing is a software testing process that evaluates software from the customers’ point of view. It is favorable as it does not require the development team to complete coding for starting QA. Instead, both coding and testing go hand in hand. However, it may require continuous customer interaction.
Posted Date:- 2021-10-31 22:43:53
The test driver is a section of code that calls a software component under test. It is useful in testing that follows the bottom-up approach.
The test stub is a dummy program that integrates with an application to complete its functionality. It is relevant for testing that uses the top-down approach.
For example:
1. Let’s assume a scenario where we have to test the interface between Modules A and B. We have developed only Module A. Here, we can test Module A if we have the real Module B or a dummy module for it. In this case, we call Module B as the test stub.
2. Now, Module B can’t send or receive data directly from Module A. In such a scenario, we’ve to move data from one module to another using some external features called test driver.
Posted Date:- 2021-10-31 22:43:29
No. System testing should start only if all modules are in place and they work correctly. However, it should be performed before UAT (user acceptance testing).
Posted Date:- 2021-10-31 22:42:47
Unit testing has many names such as module testing or component testing.
Many times, it is the developers who test individual units or modules to check if they are working correctly.
Whereas, integration testing validates how well two or more units of software interact with each other.
There are three ways to validate integration:
* Big Bang approach
* Top-down approach
* Bottom-up approach
Posted Date:- 2021-10-31 22:42:25
Test coverage is a quality metric to represent the amount (in percentage) of testing completed for a product. It is relevant for both functional and non-functional testing activities. This metric is used to add missing test cases.
Posted Date:- 2021-10-31 22:41:51
It is a standard software testing approach that requires testers to assess the functionality of the software as per the business requirements. The software is treated as a black box and validated as per the end user’s point of view.
Posted Date:- 2021-10-31 22:41:23
Integration testing is a level of software testing process, where individual units of an application are combined and tested. It is usually performed after unit and functional testing.
Posted Date:- 2021-10-31 22:40:02
There are four test levels
1. Unit/component/program/module testing
2. Integration testing
3. System testing
4. Acceptance testing
Posted Date:- 2021-10-31 22:37:38
Static testing is a white-box testing technique that directs developers to verify their code with the help of a checklist to find errors in it. Developers can start the static testing without actually finalizing the application or program. Static testing is more cost-effective than dynamic testing as it more areas than dynamic testing in a shorter time.
Posted Date:- 2021-10-31 22:35:25
Verification is a process of evaluating software at the development phase. It helps you to decide whether the product of a given application satisfies the specified requirements. Validation is the process of evaluating software at the after the development process and to check whether it meets the customer requirements.
Posted Date:- 2021-10-31 22:34:59
Static testing: During Static testing method, the code is not executed, and it is performed using the software documentation.
Posted Date:- 2021-10-31 22:34:38
Black box testing is the software testing method which is used to test the software without knowing the internal structure of code or program. This testing is usually done to check the functionality of an application. The different black box testing techniques are
1. Equivalence Partitioning
2. Boundary value analysis
3. Cause-effect graphing
Posted Date:- 2021-10-31 22:34:08
In white box testing following steps are verified.
1. Verify the security holes in the code
2. Verify the incomplete or broken paths in the code
3. Verify the flow of structure according to the document specification
4. Verify the expected outputs
5. Verify all conditional loops in the code to check the complete functionality of the application
6. Verify the line by line coding and cover 100% testing
Posted Date:- 2021-10-31 22:33:27
White box testing technique involves selection of test cases based on an analysis of the internal structure (Code coverage, branches coverage, paths coverage, condition coverage, etc.) of a component or system. It is also known as Code-Based testing or Structural testing. Different types of white box testing are
1. Statement Coverage
2. Decision Coverage
Posted Date:- 2021-10-31 22:32:37
Equivalence partitioning testing is a software testing technique which divides the application input test data into each partition at least once of equivalent data from which test cases can be derived. By this testing method, it reduces the time required for software testing.
Posted Date:- 2021-10-31 22:32:10
The relationship between test cases and requirements is shown with the help of a document. This document is known as a traceability matrix.
Posted Date:- 2021-10-31 22:31:38
SDLC deals with development/coding of the software while STLC deales with validation and verification of the software.
Posted Date:- 2021-10-31 22:31:08
In order to identify and execute the functional requirement of an application from start to finish “use case” is used and the techniques used to do this is known as “Use Case Testing.”
Posted Date:- 2021-10-31 22:30:39
In order to identify and execute the functional requirement of an application from start to finish “use case” is used and the techniques used to do this is known as “Use Case Testing.”
Posted Date:- 2021-10-31 22:30:37
Exploratory testing is a hands-on approach in which testers are involved in minimum planning and maximum test execution. The planning involves the creation of a test charter, a short declaration of the scope of a short (1 to 2 hour) time-boxed test effort, the objectives and possible approaches to be used. The test design and test execution activities are performed in parallel typically without formally documenting the test conditions, test cases or test scripts. This does not mean that other, more formal testing techniques will not be used. For example, the tester may decide to use boundary value analysis but will think through and test the most important boundary values without necessarily writing them down. Some notes will be written during the exploratory-testing session so that a report can be produced afterward.
Posted Date:- 2021-10-31 22:30:19