STQA - Question Bank
STQA - Question Bank
Reduction of testing effort In verification and validation strategies, numerous test case design methods have been
studied. Test cases for a complete software may be hundreds of thousands or more in number. Executing all of
them manually takes a lot of testing effort and time. Thus, execution of test suits through software tools greatly
reduces the amount of time required.
Reduces the testers’ involvement in executing tests Sometimes executing the test cases takes a long time.
Automating this process of executing the test suit will relieve the testers to do some other work, thereby increasing
the parallelism in testing efforts.
Facilitates regression testing As we know, regression testing is the most time- consuming process. If we
automate the process of regression testing, then testing effort as well as the time taken will reduce as compared to
manual testing.
Avoids human mistakes Manually executing the test cases may incorporate errors in the process or sometimes,
we may be biased towards limited test cases while checking the software. Testing tools will not cause these
problems which are introduced due to manual testing.
Reduces overall cost of the software As we have seen that if testing time increases, cost of the software also
increases. But due to testing tools, time and therefore cost can be reduced to a greater level as testing tools ease the
burden of the test case production and execution.
2. Compare manual and automation testing
3. Importance of Selenium’s tool suite. Explain its core components.
o Selenium is an open source and portable Web testing Framework.
o Selenium IDE provides a playback and record feature for authoring tests without the need to learn a
test scripting language.
o It can be considered as the leading cloud-based testing platform which helps testers to record their
actions and export them as a reusable script with a simple-to-understand and easy-to-use interface.
o Selenium supports various operating systems, browsers and programming languages. Following is
the list:
Programming Languages: C#, Java, Python, PHP, Ruby, Perl, and JavaScript
Operating Systems: Android, iOS, Windows, Linux, Mac, Solaris.
Browsers: Google Chrome, Mozilla Firefox, Internet Explorer, Edge, Opera, Safari, etc.
o It also supports parallel test execution which reduces time and increases the efficiency of tests.
o Selenium can be integrated with frameworks like Ant and Maven for source code compilation.
o Selenium can also be integrated with testing frameworks like TestNG for application testing and
generating reports.
o Selenium requires fewer resources as compared to other automation test tools.
o WebDriver API has been indulged in selenium whichis one of the most important modifications
done to selenium.
o Selenium web driver does not require server installation, test scripts interact directly with the
browser.
o Selenium commands are categorized in terms of different classes which make it easier to
understand and implement.
o Selenium Remote Control (RC) in conjunction with WebDriver API is known as Selenium 2.0. This
version was built to support the vibrant web pages and Ajax.
Selenium is not just a single tool but a suite of software, each with a different approach to support automation
testing. It comprises of four major components which include:
Selenium IDE is implemented as Firefox extension which provides record and playback functionality on test
scripts. It allows testers to export recorded scripts in many languages like HTML, Java, Ruby, RSpec, Python, C#,
JUnit and TestNG. You can use these exported script in Selenium RC or Webdriver.
>Selenium IDE has limited scope and the generated test scripts are not very robust and portable.
Selenium RC (officially deprecated by selenium)allows testers to write automated web application UI test in any
of the supported programming languages. It also involves an HTTP proxy server which enables the browser to
believe that the web application being tested comes from the domain provided by proxy server.
>
2. Selenium RC Client (library containing your programming language code).
The figure given below shows the architectural representation of Selenium RC.
Selenium RC had been considered quite effective for testing complex AJAX-based web user interfaces under a
Continuous Integration System.
3. Selenium WebDriver
Selenium WebDriver (Selenium 2) is the successor to Selenium RC and is by far the most important component of
Selenium Suite. SeleniumWebDriverprovides a programming interface to create and execute test cases. Test
scripts are written in order to identify web elements on web pages and then desired actions are performed on those
elements.
Selenium WebDriver performs much faster as compared to Selenium RC because it makes direct calls to the web
browsers. RC on the other hand needs an RC server to interact with the web browser.
Since, WebDriver directly calls the methods of different browsers hence we have separate driver for each browser.
Some of the most widely used web drivers include:
4. Selenium Grid
Selenium Grid is also an important component of Selenium Suite which allows us to run our tests on different
machines against different browsers in parallel. In simple words, we can run our tests simultaneously on different
machines running different browsers and operating systems.
Selenium Grid follows the Hub-Node Architecture to achieve parallel execution of test scripts. The Hub is
considered as master of the network and the other will be the nodes. Hub controls the execution of test scripts on
various nodes of the network.
4. Joe executes same set of test cases manually every month to ensure functionality is not broken due to
new projects; but this activity requires lot of time. What do you suggest him to save his time? Justify
5. Which automation testing tool enables to record and playback for testing web applications and can run
multiple scripts across various browsers? How does the different suit help to user?
6. What are the primary objectives when we test software? Briefly outline the requirement specification of
an E-Commerce. How will you prepare test cases? Write the test cases on it.
The main goal of software testing is to find bugs as early as possible and fix bugs and make sure that the
software is bug-free. The goals of software testing may be classified into three major categories as follows:
1. Immediate Goals
2. Long-term Goals
3. Post-Implementation Goals
1. Minimalism
The first thing you need to keep in mind is that your audience doesn’t always want an abundance of choice. What
they’re interested in is getting the product that they want, which is why they need a simple interface, intuitive
categories and the necessary information. We’re talking about price, shipment options and a brief list of product
features. To do this right, you should start looking for minimalist website builders.
2. Dark Mode
A dark mode enhances visual ergonomics and drastically reduces eye strain. Keep in mind that, for someone who
spends most of the day online, this chance to rest their eyes might be more than welcome. This is especially
prominent during the nighttime which is, coincidentally, when most people are staring at their phones. The biggest
advantage of a dark mode is that it slightly and passively increases the customer satisfaction that users feel when
shopping on your site.
3. Chatbots
Chatbots providing assistance on a page are yet another welcome change. Namely, chatbots provide your audience
with an immediate response, which is a huge plus for your customer experience. As far as the concerns of people
that don’t want to chat with bots go, most of the time your audience can’t even tell whether there’s a human being
or a machine on the other end. Although, it’s beneficial to have human support agents on stand-by for those who
need more personalized assistance.
4. Protect Your Platform
Since you’re asking people to give you their personal information, it is only right that you go above and beyond to
protect their data and your business. This is why, in order to be taken seriously in the eCommerce world of 2020,
you need to make an extra effort to protect your platform. A single leak is sometimes enough to ruin your
reputation for good – especially when there are so many competitors out there that your audience doesn’t even have
to take the unnecessary risk.
5. Mobile-First
Seeing as how the majority of traffic online takes place via mobile devices, it’s only natural that you need to
consider going mobile-first with your design. Today, people no longer expect their mobile browsing experience to
be any slower than its desktop-based counterpart. This way, you put the emphasis on responsiveness, which should
drastically improve your user experience. Speaking of which…
6. Focus on User Experience
While user experience may sound like something subjective, the truth is that it consists of a plethora of objective,
statistically proven factors. Keep in mind that key factors here are the intuitiveness of your design and the
responsiveness of your website. Therefore, your homepage needs to be clean and simple while your categories need
to be well-organized. Aside from this, visuals that aid in the user experience, rather than distract from or get in the
way of it, also play a key role in the overall effectiveness.
7. Search Engine Optimization
The internet is a big place, making it easy to exist without ever being noticed online. Perhaps the most important
thing to improve about a website in such a competitive field is its ease of discovery. The most efficient way of
doing so is making an investment into the SEO optimization of your page. For this to work, you need to look for
reliable local SEO professionals. For instance, an NSW-based business should look for Sydney SEO experts to help
them out. Local collaboration can drastically improve the effectiveness of outsourcing, seeing as how face-to-face
meetings and being in the same time-zone tend to make things a lot simpler.
8. Gamify Shopping
There are many ways for you to gamify the overall shopping experience on an eCommerce website; one of the
most unique methods is incentivizing shoppers with a loyalty program. By offering rewards in different tiers, you’ll
give your audience an intrinsic motivation to try extra hard in order to make a difference. Loyalty programs work
best by offering rewards for shopping often, typically giving customers points with every transaction that can be
put towards a future free item or discount.
9. Content-Centric Design
Keep in mind that your audience is always looking for content. This means that you need to make sure that your
website is content-centric. Otherwise, you’re not providing your target audience with the multi-faceted brand
experience that they’re looking for. Keep in mind that the quantity of the content in question matters almost as
much as quality. Even the best-written post won’t do much if the rest of your site is completely empty, so work on
putting out consistently valuable content in the form of blog posts, videos, photographs, or anything that works
with your brand.
10. Focus on Return Customers
Return customers are incredibly profitable because they’re already familiar with your business and are more likely
to stay loyal. However, every returning customer was once a first-time shopper. This is why you need to optimize
your platform so that it turns one-time shoppers into lifetime buyers. While a post-sale follow-up may not be
directly integrated into your website design, you can gather customer information and reach out to them to further
personalize the shopping experience.
11. Adequate Photography Techniques
Your website is all about categories and products. For your products, you need to be using high-resolution photos
and images – but, it’s not just the resolution that matters here. Other than this, you also need to focus on the
photography techniques used. For instance, when selling clothing items, there’s nothing quite like ghost mannequin
photography. Product photography should focus on giving customers the closest understanding possible of the
product in question to boost conversions and cut down on post-purchase regrets.
12. Increased Traffic
Apart from all of the above, you need to keep in mind that an increase in website traffic needs to be a factor that
you prepare your business and website for. Every year, the number of people online rises; the same goes for
eCommerce. By utilizing technology that enables your website to handle lots of customers at once, you can prepare
yourself for the change. Regularly updating your website, updating the plugins and removing those that you no
longer use are just some of the ways to achieve this. Finding a reliable host, or using a secure hosted eCommerce
platform, also helps to maintain a constant up-time.
13. Multilanguage Support
More and more of the eCommerce business is occurring internationally. For instance, while the majority of the
internet is in English, it goes without saying that China is currently the world’s biggest eCommerce market. In
fact, Alibaba is the world’s largest eCommerce site when taking into account GMV, or gross merchandise value.
Since many overseas markets are rapidly growing, you should provide multi-language support on your website to
avoid alienating any international customers.
14. Guest Checkout
A lot of people become frustrated at any delay when they decide to make a purchase. Because of this, customers
highly value it when you allow them to pay without having to register for an account on your online store. Simply
offer them a guest checkout option to give you their payment information, their email (for confirmation and digital
receipt) and the address of delivery. The checkout page especially is incredibly important for optimizing
conversions and reducing cart abandonment, so focus on any potential snags in the process on your site.
15. Secure, Flexible Payments
It's vital that you keep your customers' sensitive payment information safe and secure when they shop on your
eCommerce website. Additionally, you want to offer flexible methods of payment to customers who prefer
alternative payment methods like digital wallets. By integrating with a payment gateway like Shift4 Payments, your
online store will take payments securely with a platform that offers tokenization, card-on-file, bank-grade security,
and more. They can also accept popular wallets like Apple Pay and Google Pay, keeping your customers happy
with more options to pay.
16. Adjusting to Your Demographic
There are various studies online about different demographics; what you need to do is A) study them and B) adjust
to them. For instance, men statistically spend more money online than women, Generation X is the most active
when it comes to shopping, and Baby Boomers spend more per transaction than any other group. Knowing the
composition of your target audience will allow you to adapt your strategy to their more likely habits.
17. All Devices Matter
Previously, we’ve talked about the importance of going mobile-first. Well, the truth is that all devices matter. You
see, even though there are fewer sales on tablets and desktops, the truth is that these two devices have A) higher
conversion rates and B) higher average value of the order. This makes them relevant, even in 2020, which
emphasizes the importance of responsive design instead of a separate mobile website. Test your site out on multiple
devices to ensure that all elements function properly, regardless of screen size.
18. Recommended Items
Recommending the right item at the right time might make a difference between making a sale and failing to do so
entirely. One of the best ways to improve your recommendation algorithm is to closely study the art of cross-
selling, which is the practice of selling additional, often complementary, items alongside the initial product a
customer may have been looking to purchase. The recommended items feature is a subtle and seamless way to do
so.
19. Work on Load Times
One thing that most highest-ranking eCommerce websites have in common is their average load speed being
bellow 2 seconds. This makes a huge difference since, after 4 seconds of not loading, you stand to lose as much
as 25 percent of your total audience. Test your site’s load times with a tool like Google’s PageSpeed Insights and
work on eliminating factors that may be causing your site to load slower than optimal.
20. Abandonment Rate Isn’t That Scary
The last thing you need to keep in mind is the fact that cart abandonment rate is no longer seen as something scary.
After all, about 85 percent of all people do research before buying, and average the conversion rate within the
eCommerce industry is lower than 3 percent. So, don’t get discouraged; cart abandonment is something that will
happen with any online store. While you can work to reduce it, this rate isn’t something that can be totally
eliminated.
General Test Cases for Ecommerce Application
1. Verify that the user is able to navigate through all the products across different categories.
2. Verify that all the links and banners are redirecting to correct product/category pages and none of the links
are broken.
3. Verify that the company logo is clearly visible.
4. Verify that all the text – product, category name, price, and product description are clearly visible.
5. Verify that all the images – product and banner are clearly visible.
6. Verify that category pages have a relevant product listed specific to the category.
7. Verify that the correct count of total products is listed on the category pages.
8. Search – Verify that on searching all the product satisfying the search criteria are visible on the search
result page.
9. Search – Verify the more relevant product for the search term is displayed on the top for a particular search
term.
10. Search – Verify that count of products is correctly displayed on the search result page for a particular
search term.
11. Filtering – Verify that filtering functionality correctly filters products based on the filter applied.
12. Filtering – Verify that filtering works correctly on category pages.
13. Filtering – Verify that filtering works correctly on the search result page.
14. Filtering – Verify that the correct count of total products is displayed after a filter is applied.
15. Sorting – Verify that all the sort options work correctly – correctly sort the products based on the sort
option chosen.
16. Sorting – Verify that sorting works correctly on the category pages.
17. Sorting – Verify that sorting works correctly on the search result page.
18. Sorting – Verify that sorting works correctly on the pages containing the filtered result, after applying
filters.
19. Sorting – Verify that product count remains intact irrespective of sorting option applied.
Product Buy Flow – Test cases for Ecommerce Website
1. Verify that on the product page, the user can select the desired attribute of the product e.g. size, color, etc.
2. Verify that the user can add to cart one or more products.
3. Verify that users can add products to the wishlist.
4. Verify that the user can buy products added to the cart after signing in to the application (or as per the
functionality of the website).
5. Verify that the user can successfully buy more than one product that was added to his/her cart.
6. Verify that the user cannot add more than the available inventory of the product.
7. Verify that the limit to the number of products a user can by is working correctly by displaying an error
message and preventing the user from buying more than the limit.
8. Verify that the delivery can be declined for the places where shipping is not available.
9. Verify that the Cash on Delivery option of payment is working fine.
10. Verify that the different pre-paid methods of payments are working fine.
11. Verify that product return functionality works fine.
User(Buyer) Registration – Test cases
1. Verify that all the specified fields are present on the registration page.
2. Verify that the required/mandatory fields are marked with * against the field.
3. Verify that for better user interface dropdowns, radio buttons and checkboxes, etc fields are displayed
wherever possible instead of just textboxes
4. Verify the page has both submit and cancel/reset buttons at the end.
5. Verify that clicking submits button after entering all the required fields, submits the data to the server.
6. Verify that clicking cancels/reset button after entering all the required fields, cancels the submit request,
and reset all the fields.
7. Verify that whenever possible validation should take place at client side
8. Verify that not filling the mandatory fields and clicking the submit button will lead to validation error.
9. Verify that not filling the optional fields and clicking the submit button will still send data to the server
without any validation error.
10. Check the upper limit of the textboxes.
11. Check validation on the date and email fields (only valid dates and valid email Ids should be allowed.
12. Check validation on numeric fields by entering alphabets and special characters.
13. Verify that leading and trailing spaces are trimmed.
14. Verify that entering blank spaces on mandatory fields leads to validation error.
15. Verify that after making a request to the server and then sending the same request again with the same
unique key will lead to server-side validation error.
7. Justify, which type of testing includes an incremental approach to test the software and features as
they are developed?
Agile testing is an iterative and incremental method, and the necessities, which develop during the cooperation
between the customer and self-establish teams.
In agile testing, the word "Agile" primarily signifies something that can be performed quickly and immediately,
but also in the area of software development.
The core-functional agile team implements it in order to test the software product and its several modules. The
implementation of agile testing makes sure to deliver a high quality product as bugs or defects get deleted in the
initial stage of the project itself.
Unlike the Waterfall model, Agile Testing can create at the beginning of the project with endless incorporation
between development and testing. It is not a sequential but the continuous process.
The agile testing process is a smart way of testing complicated software, which accepts more effective results as
compared to the traditional testing procedures.
In the modern days of software testing, agile testing has gained a lot of acceptance and significance. The execution
of agile testing will help us identify the initial error and elimination, giving better results in less development time
and costs.
Agile Testing includes various different principles that help us to increase the productivity of our software.
1. Constant response
2. Less documentation
3. Continuous Testing
4. Customer Satisfaction
5. Easy and clean code
6. Involvement of the entire team
7. Test-Driven
8. Quick feedback
Just like other types of testing has their life cycle process, Agile Testing life cycle completed into five different
phases, as we can see in the following image:
The first phase of the Agile testing life cycle is Impact assessment. Here, we collect the inputs and responses
from users and stakeholders to execute the impact assessment phase. This phase is also known as the feedback
phase, which supports the test engineers to set the purpose for the next life cycle.
Phase2: Agile Testing Planning
The second phase of the Agile testing life cycle is agile testing planning. In this phase, the developers, test
engineers, stakeholders, customers, and end-users team up to plan the testing process schedules, regular meetings,
and deliverables.
The next phase of the Agile testing life cycle is release readiness, where test engineers have to review the features
which have been created entirely and test if they are ready to go live or not and which ones need to go back to the
previous development phase.
Daily scrums are the next phase of the Agile testing life cycle, which involves the daily morning meetings to
check on testing and determine the objectives for the day.
And, in order to help the test engineers to understand the status of testing, the goals and targets of the day are set
daily.
The last and final phase of the Agile life cycle is the test agility review. The test agility phase encompasses the
weekly meetings with the stakeholders to evaluate and assess the progress against goals.
In other words, we can say that the agility reviews are implemented regularly in the development process to
analyze the progress of the development.
Scrum testing is a type of software testing that is performed to check the ability of the software or application to
execute complicated processes. This testing also checks various other parameters of the software like quality,
usability and performance. Execution of complex process needs complex software. Hence in order to make a
complex software, scrum testing is required.
Objectives of Scrum Testing:
The objective of Scrum Testing is:
To check the complexity of the software.
To test the quality of the software.
To test the performance of the software.
To test the usability of the software.
To support in unit testing.
https://www.guru99.com/web-application-testing.html
11. What steps does a cross-functional team of 5-10 members follow to deliver a working incremental
product?
12. How are the main activities in Software Quality ensured? Justify the reason.
https://testpoint.com.au/11-ways-to-improve-software-quality/
13. Explain planning for software quality assurance with respect to your final year project.
14. Explain product and process quality with an example.
15. What do you mean by Software Quality standards? Illustrate their essence as well as benefits.
Compare ISO 9000 and SEI-CMM quality models.
ISO 9000 SEICMM
ISO 9000 is a set of international standards on quality SEI (Software Engineering Institute),
management and quality assurance developed to help Capability Maturity Model (CMM) specifies an
companies effectively document the quality system elements increasing series of levels of a software
needed to an efficient quality system. development organization.
It is created for hard goods manufacturing industries. It is created for software industry.
It specifies concepts, principles and safeguards that should be CMM provides detailed and specific definition
in place. of what is required for given levels.
It has 5 levels:
(a). Initial
(b). Repeatable
(c). Defined
(d). Managed
(e). Optimized
It has no level.
16. John wants to find a model which is used to validate his newly developed product quality using
different factor. Justify the quality model he should use.
17. Write in brief ISO 9000:2000.
18. Explain the Capability Maturity Model (CMM) levels