Software Skills Flashcards
What is software testing?
- Process of executing a program or application with the intent of find as many defects as possible;
- To verify whether all specified requirements have been fulfilled
- To validate if software product works as the users & other customers expect
- To prevent defects by finding defects on early SDLC stages by evaluate work products such as requirements, design, & code
- To find defects in requirements prevent defects in design
- To find defects in design to prevent defects in code
- Identifying defects prior to a release prevent users from facing failures after release
What is software requirements specification (SRS)?
- It’s a document which acts as a contract between the customer & the supplier
- SRS contains all the requirement of the end user regarding that application. SRS can be used as a communication between the user & a supplier
- The developer & tester prepare & examine the application according to the SRS
- SRS is prepared by Business Analyst by taking all requirements from the customer
What is Software Development Life Cycle (SDLC)?
SDLC defines the phases in building of software/application
- Project planning
- Requirements gathering
- Design
- Developing (coding)
- Testing
- Production (deployment)(Releasing the product)
- Maintenance (Making sure product is stable, looking at customer report on bugs & fixing them)
What is Software Testing Life Cycle(STLC)?
STLC is a sequence of different activities performed by the testing team to ensure the quality of the software or the product
Test planning - The process of writing and updating the test plan;
Test monitoring and control - is the process of checking whether everything is going according to the written test plan;
Test analysis - Is the process of determining ‘What to test’;
Test design - Is the process of determining ‘How to test’;
Test implementation - is the process of setting up all the conditions necessary to start testing;
Test execution - is the process of executing test cases and comparing the expected and actual results;
Test completion - is the process of collecting data from completed test activities and reporting results.
What is the difference between STLC & SDLC?
- STLC is a part of SDLC.
- SDLC defines all the standard phases which are involved during the software development process, whereas the STLC process defines various activities to improve the quality of the product.
SDLC is a Development Life Cycle whereas STLC is a Testing Life Cycle.
In SDLC, the development team creates the high and low-level design plans while In STLC, the test analyst creates the System, Integration Test Plan
In SDLC, real code is developed, and actual work takes place as per the design documents, whereas in STLC testing team prepares the test environment and executes test cases.
The SDLC life cycle helps a team to complete successful development of the software while STLC phases only cover software testing.
What is requirement?
- Requirements convey the expectation of users for the software/product.
- Goal of requirement is to develop & maintain sophisticated & descriptive SRS document
When does the testing start?
- Testing starts from testing the requirements. We have to make sure the requirements are correct in first place.
Why do we test?
- To build bug free application
- To satisfy end user & client
- To build great product to generate more revenue
- I love testing & testing is my passion
- software Testing saves money;
- software testing improves product quality;
- software testing Increases customer trust, satisfaction, and confidence;
- software testing reduces risks;
- software testing affects security.
What is tester’s main responsibility? What is the job responsibilities of a tester?
- To find bugs as much as possible, as early as possible
- To satisfy the end user & client by delivering bug free & user-friendly application
- Write automation of testing & set up the same for different platforms like web or mobile
- Managing & handling bug reports
- Preparing & delivering test cases
Is 100% testing possible?
- We can’t test the application 100% since there are unlimited scenarios that we can’t even imagine
- Software testing is risk-based activity based on priority of the functionality, we can test as much as possible
What is positive testing?
Testing the application with valid input.
Ex. If I login with valid username & password
What is a User Story?
User Story is an unit of work that should be done in one sprint. Ideally a User Story shouldn’t last more that a week
What is an Epic?
Epic is a big chunk of work that has one common objective. It’s a placeholder for required features with few lines of description. It can hold multiple user stories which are focused on a specific scope. Normally it takes a few sprints to finish one Epic.
What is a task?
- A task represents work that needs to be done
How to estimate Epic?
- Small 0-2 weeks
- Medium 2-4 weeks
- Large 4-8 weeks
- XLarge 8-16 weeks
What is defect or bug?
A defect is an error in an application. It occurs when any mistakes are made by developer during designing or building the application & when this flow is found by a tester. It’s the tester responsibility to do the testing of an application to find as many defects as possible to ensure that a quality product will reach the customer
A bug - is a general term describing any unexpected hardware or software problem. In short, it is any behavior or result that a program or system gets, but was not designed to do.
What is Defect Life Cycle?
Bug life cycle also known as defect life cycle is a process in which defect goes through different stages in its entire life. This lifecycle starts as soon as a bug is reported by the tester and ends when a tester ensures that the issue is fixed and won’t occur again.