SOFTWARE TESTING & QUALITY ASSURANCE Assignment Solutions | Assignment Solutions of Software Testing & Quality Assurance | Software Testing & Quality Assurance assignment solutions pdf
Hey Learners! Today in this post we are going to cover some questions related to Software Testing & Quality Assurance subject.
I have covered some important question with their answers which are commonly asked in your college/university level exams.
Read these questions & answers carefully.
SOFTWARE TESTING & QUALITY ASSURANCE | Assignment Solutions
Q1. Discuss whether automation testing can replace manual testing or not.
Ans. In manual testing, a human performs the tests step by step, without test scripts while in automated testing, tests are executed without human assistance, oftentimes via test automation frameworks, along with other tools and software.
Automation testing can not replace manual testing. We need both manual and automation testing. Manual testing handles complex test cases, while automated testing handles simpler, more repetitive tests.
So, manual testing is still important. But adding automated testing makes our manual tests more efficient.
it’s simply not possible to have a robust QA process by relying solely on automation. There are QA testing elements that continue to be best handled by manual testing.
We live in a time when there is a place for both methods of testing. The right mix between automation and manual tests is essential for a successful QA team. It might also be suitable for a tester to switch between manual and automation testing from time to time.
Automation will help the tester get outside the manual routine and develop their coding skills and the ones needed for manual testing.
Manual testing helps us understand the big picture and explore the other angles of tests with flexibility. Neither of the two can replace the other entirely.
The primary benefit of the integrated software testing approach is that it combines:
- The flexibility and freedom of manual testing
- The speed and improved coverage of automated tests
Q2. “Exhaustive testing is possible or not”. Justify the statement.
Ans. It is not possible to perform complete testing or exhaustive testing. For most systems, it is nearly impossible because of the following reasons:
The scope of the application installation is too large to be fully utilized for system testing. There are both valid inputs and invalid inputs.
The program may have a large number of states. There may be timing constraints on the inputs, that is, an input may be valid at a certain time and invalid at other times. An input value which is valid but is not properly timed is called an inopportune input. The input domain of a system can be very large to be completely used in testing a program.
The design issues may be too complex to completely test. The design may have included implicit design decisions and assumptions. For example, a programmer may use a global variable or a static variable to control program execution.
It may not be possible to create all possible execution environments of the system. This becomes more significant when the behaviour of the software system depends on the real, outside world, such as weather, temperature, altitude, pressure, and so on.
Q3. Explain the working of load testing for the websites.
Ans. Load testing is a type of performance testing that simulates a real-world load on any software, application, or website. Load testing examines how the system behaves during normal and high loads and determines if a system, piece of software, or computing device can handle high loads given a high demand of end-users.
A load test focuses on testing the performance of the requests to the backend. The two most fundamental aspects to analyze are the server response time and the number of returned errors.
A load test can be done with end-to-end IT systems or smaller components like database servers or firewalls. It measures the speed or capacity of the system or component through transaction response time. When the system components dramatically extend response times or become unstable, the system is likely to have reached its maximum operating capacity. When this happens, the bottlenecks should be identified and the system should be fine-tuned.
Q4. Should testing be done only after the build and execution phases are complete?
Ans. In traditional testing methodology testing is always done after the build and execution phases. However, testing should be done at each phase of a project.
The earlier we catch a defect, the more cost effective it is. For instance, fixing a defect in maintenance is ten times more costly than fixing it during execution.
In the requirement phase we can verify if the requirements are met according to the customer needs. During design we can check whether the design document covers all the requirements. In this stage we can also generate rough functional data. We can also review the design document from the architecture and the correctness perspectives. In the build and execution phase we can execute unit test cases and generate structural and functional data. And finally comes the testing phase done in the traditional way. i.e., run the system test cases and see if the system works according to the requirements. During installation we need to see if the system is compatible with the software. Finally, during the maintenance phase when any fixes are made we can retest the fixes and follow the regression testing.
Therefore, Testing should occur in conjunction with each phase of the software development.
Q5. Construct Software Design Document for the Student Evaluation System. Make your own assumption about the system.
Q6. State whether it is possible to achieve100% coverage of testing? How would you ensure it?
Ans. As testing is a never ending process we can never assume that 100 % test cases have been prepared, we can only minimize the risk of shipping the product to a client.
100% testing is impossible for several reasons:
- We can’t test all the inputs to the program.
- We can’t test all the combinations of inputs to the program.
- We can’t test all the paths through the program.
- We can’t test for all of the other potential failures, such as those caused by user interface design errors or incomplete requirements analyses.
Ways to ensure maximum % coverage of testing:
- Create a comprehensive testing strategy. It should take into account the application’s requirements as well as the testing methods you’ll be employing.
- Create a checklist for all of the testing activities. Based on your testing strategy, the next step is to create a list of actual tasks that need to be carried out. Take into account the different types of testing, both manual and automated, the size and experience level of your team, and the type of application you develop.
- Prioritize critical areas of the application. When resources are scarce (and when aren’t they?), you need to favor a risk-based approach to testing. Favor areas of the application that are both critical and have a high probability of having problems.
- Create a list of all requirements for the application. This will be invaluable when performing both product and requirements coverage.
- Write down the risks inherent to the application. This is required to perform risk coverage.
- Leverage test automation. That way, you’ll reduce overall testing time, free professionals from doing repetitive, tedious, and error-prone activities, and be able to cover many more portions of the application.
Q7. Construct Software Requirement Specification (SRS) for Hospital Management System.
Q8. Construct Software Requirement Specification (SRS) for Online Shopping System.
Q9. Does an increase in testing always improve the project?
Ans. No increase in testing does not mean always good for the product, company or the project. In real test scenarios from 100% test plans only 20% test plans are critical from business angle. Running those critical test plans will assure that the testing is proper rather than running the full 100% test plans again and again. Below is the graph which explains the impact of under testing and over testing. If you under test a system your number of defect will increase, but on the contrary if you over test a system your cost of testing will increase. Even if your defects come down your cost of testing has gone up.
Q10. Elaborate System Design for a Library Management System, what will be the inputs and outputs for this system?
1) Book details (RFID / Barcode including info on title, author, publisher, rack #, rack column & row etc),
2) Borrower details (student # etc)
3) Date & time borrow
4) Request info on a book borrowed too long by a previous borrower so that s/he can’t renew next but have to return the book (so that other new borrower can borrow)
1) Date & time borrower can renew the book online
2) Date & time borrower needs to physically return the book for renewal / return
3) Email (generated by the eLibrary System) to borrower to remind him / her on the book’s due date for renewal / return
4) Screen flagged on list of borrowers that haven’t return the books after due date
5) Penalty payment to collect from the overdue borrower
6) History list of books a borrower had borrowed
Wants to learn more about C++ Programming? If yes, then don’t forget to explore all the topics of C++ programming. Here, is the complete set of Multiple Choice Questions and Answers. You should learn all the questions available there. These questions are very helpful for the preparation of placements, Competitive Exams and University level exams.
Learn about 404 ERROR page – EVERYTHING YOU NEED TO KNOW ABOUT 404 ERROR PAGE FOR SEO
For frontend projects, check and implements these beginner’s friendly projects :- TOP 7 PROJECTS FOR BEGINNERS TO PRACTICE HTML & CSS SKILLS
Do practice of HTML questions :- Multiple choice questions on HTML
Do practice of C programming :- Multiple choice questions on C programming
Want backlinks to your website? If yes, then follow this article and get to know in very easy way. How You Can Create High Quality Backlinks In 2021?
The above question set contains all the correct answers. But in any case, you find any typographical, grammatical or any other error in our site then kindly inform us. Don’t forget to provide the appropriate URL along with error description. So that we can easily correct it.
Thanks in advance.