Download as pdf or txt
Download as pdf or txt
You are on page 1of 14

Chat GPT for Quality Assurance: A

Guide for QA Engineers


Introduction
Quality Assurance (QA) Engineers play a crucial role in the software development process.
They are responsible for ensuring that the software products they work on are of the highest
quality before they are released to the public. This involves identifying and documenting
defects or issues in the software, creating checklists and test cases, and creating release
notes and test plans.
One tool that can assist QA Engineers in these tasks is the chat GPT, or Generative
Pre-trained Transformer. The chat GPT is a language model that has been trained on a large
dataset and can generate human-like text. It can be used to assist with creating bug reports,
test documentation, and even writing and debugging autotests. In this chapter, we will
provide an overview of the chat GPT and how it can be used in the QA process.

How the Chat GPT Works


The chat GPT is a type of language model that uses generative pre-trained transformer
technology. This means that it has been trained on a large dataset and can generate
human-like text. The chat GPT works by processing a given input and then generating a
response based on that input.
The chat GPT can be used in a variety of ways in the QA process. For example, it can assist
with creating bug reports by providing suggestions for organizing and formatting the report. It
can also help with creating checklists and test cases by providing suggestions for organizing
and formatting this documentation. In addition, the chat GPT can assist with creating release
notes and test plans by providing suggestions for formatting and organizing this information.
Finally, the chat GPT can help with writing and debugging autotests by providing
suggestions for organizing and formatting the code, as well as helping to troubleshoot any
issues that may arise. Overall, the chat GPT can save time and improve the efficiency of the
QA process by providing assistance with various tasks and documentation.

Setting Up the Chat GPT


In order to use the chat GPT, you will need to access the web version of the tool. Here are
the steps for setting up and using the chat GPT:
1. Go to the website https://chat.openai.com/.
2. Create an account and log in.
3. Follow the prompts to set up your account and customize your preferences, such as
the language and domain you want the chat GPT to focus on.
4. To use the chat GPT, simply type in your input and hit send. The chat GPT will
generate a response based on your input.
There are also a few tips for customizing the chat GPT to meet the needs of your QA team:
1. You can customize the chat GPT's language and domain settings to focus on the
specific software and industry you are working in.
2. You can fine-tune the chat GPT's responses by providing additional training data.
3. You can set up the chat GPT to integrate with other tools and systems you use in
your QA workflow.
By following these steps and tips, you can ensure that the chat GPT is set up and
customized to meet your specific needs and requirements as a QA Engineer.
Using the Chat GPT for Bug Tracking
One way in which the chat GPT can assist Quality Assurance Engineers is by helping
with the creation of thorough and detailed bug reports. When you come across a bug, it
is important to create a clear and concise report that describes the issue and provides
steps for reproducing it. The chat GPT can help with this task by providing prompts and
suggestions for organizing and formatting the report.
Here is an example of how the chat GPT can assist with creating a bug report:

Prompt: "Write me a bug report for Jira. The button doesn't open a modal
window on the home screen."

Chat GPT response:


Title: Button does not open modal window on the home screen
Description: On the home screen, the button labeled "Open Modal" does
not open the modal window as expected.

Steps to reproduce:
1. Go to the home screen of the app.
2. Tap on the "Open Modal" button.
3. Observe that the modal window does not open.

Expected result: When the "Open Modal" button is tapped, the modal
window should open.
Actual result: The modal window does not open.

To receive a more suitable answer for your needs when using the chat GPT, you can try
adding additional information to your prompt. This can help the chat GPT better
understand the context of your request and provide a more relevant response.
For example, if you are using the chat GPT to create a bug report and want to include
specific details about the bug, you can include these details in your prompt.

# Tip: For instance, instead of simply saying "Write me a bug


report," you could say "Write me a bug report for a bug that occurs
when the user clicks the 'Submit' button on the checkout page. The
bug causes the page to crash and an error message to appear."

This additional information will help the chat GPT understand the context of your request
and provide a more suitable response.
In general, the more specific and detailed you can be in your prompt, the more likely you
are to receive a relevant and useful response from the chat GPT.
Using the chat GPT in this way can save time and effort by providing a starting point for
creating a detailed and organized bug report. In addition, the chat GPT can help ensure
that all necessary information is included in the report, which can improve the efficiency
of the bug-tracking process.
Overall, using the chat GPT for bug tracking can provide numerous benefits to Quality
Assurance Engineers, including time and effort saved, improved organization and clarity
of the bug report, and increased efficiency of the bug tracking process.
Using the Chat GPT for Checklists
Checklists and test cases are important tools for Quality Assurance Engineers in the
software development process. Checklists are lists of tasks or steps that need to be
completed in order to test a specific feature or functionality of the software. Test cases
are more detailed and include the specific steps to be taken, the expected outcome, and
any additional notes or observations.
The chat GPT can assist with the creation and organization of checklists and test cases
by providing prompts and suggestions for formatting and organizing this documentation.
Here is an example of how the chat GPT can assist with creating a checklist for testing
the login page of a software application:

Prompt: "Write me a checklist for testing the login page of our app."
Chat GPT response:

# Checklist for Testing the Login Page:


- Verify that the login form is displayed correctly on the page
- Test the functionality of the "Username" and "Password" fields
- Test the "Forgot Password" link
- Test the "Remember Me" checkbox
- Test the "Log In" button
- Test the "Create Account" button
- Test error messages for invalid login credentials

You always can ask for “More” and receive additional test cases. Also, you can add
additional information. Chat remember your conversation.

# Tip: When asking for a checklist, keep in mind that you can specify
the type of items you would like included. For example, you can ask
for a list of positive checks, negative checks, or a combination of
both. Be specific in your request to ensure you receive the most
relevant and helpful information.

Using the Chat GPT for Accessibility Testing

As a Quality Assurance Engineer, it is important to ensure that the software you are
testing is fully accessible to all users, including those with disabilities. The chat GPT can
assist with this task by providing prompts and suggestions for creating checklists and
other documentation related to accessibility testing.
To use the chat GPT to receive a checklist for testing the accessibility of the login page,
you can use a prompt like this:

Prompt: "Write me a checklist for testing the accessibility of the login page.
Act as a QA Engineer."
The chat GPT will then generate a response with a checklist like this:
# Checklist for Testing the Accessibility of the Login Page
1. Verify that the login form is fully keyboard accessible
2. Test that the login form is compatible with screen readers and
that all text is properly labeled and announced
3. Test that the login form is fully compatible with assistive
technologies such as magnification software
4. Test that the login form is responsive and displays correctly on
mobile devices with small screens
5. Test that the login form has high contrast colors and is easy to
read for users with visual impairments
6. Test that the login form has a font size that is large enough to
be easily readable for users with visual impairments

# Tip: When creating a checklist for accessibility, be specific about


the type of accessibility you are considering. Instead of just asking
for a general accessibility checklist, consider the different areas
of accessibility such as visual, auditory, and motor accessibility.
For example, you can create a checklist for visual accessibility that
includes items such as providing alternative text for images,
ensuring sufficient color contrast, and designing with a clear visual
hierarchy. Or you can create a checklist for auditory accessibility
that includes providing closed captions or transcripts for videos,
and audio descriptions. By being specific, you can ensure that your
checklist addresses the specific accessibility needs of your
audience.

By using the chat GPT in this way, you can quickly and easily create a comprehensive
checklist for testing the accessibility of the login page, saving time and improving the
efficiency of the QA process.
Using the Chat GPT for Test Cases
Here is an example of how the chat GPT can assist with creating a test case based on
the first item on the above checklist:

Prompt: "Write a test case for verifying that the login form is displayed
correctly on the login page."
Chat GPT response:

Test Case: Verify that the login form is displayed correctly on the
login page
Steps:
- Go to the login page of the app.
- Verify that the page includes a form with the "Username" and
"Password" fields.
- Verify that the form also includes a "Log In" button and a "Create
Account" button.
- Verify that the form is displayed correctly on the page (e.g. no
formatting issues, and all fields, and buttons are visible).
Expected result: The login form is displayed correctly on the page.

#Tip: When asking for test cases, keep in mind that you can request
them in different formats. In addition to text-based test cases, you
can also ask for test cases in tabular format. Tabular format can be
useful for large sets of test cases as it allows for easy comparison
and organization.

By using the chat GPT in this way, Quality Assurance Engineers can save time and
improve the efficiency of the process of creating and organizing test documentation.
Using the Chat GPT for Release Notes and Test
Plans
Release notes and test plans are important documents in the Quality Assurance
process. Release notes provide a summary of the changes and improvements that have
been made in a new version of the software. Test plans outline the testing strategy for a
particular software release and include details on what will be tested, how it will be
tested, and who will be responsible for conducting the tests.
The chat GPT can assist with creating both release notes and test plans by providing
prompts and suggestions for formatting and organizing this information.
Here is an example of how the chat GPT can assist with creating a test plan for testing a
new app design:

Prompt: "Write me a test plan for testing the new app design."
Chat GPT response:

Test Plan: Testing the New App Design in a Table View

Objective: To ensure that the new app design is functional and


visually appealing in a table view.

Scope: The test plan will cover the following aspects of the new app
design:
- Layout and formatting of the table view
- Functionality of the table view (e.g. sorting, filtering, etc.)
- Visual appeal of the table view

Test Approach: The test plan will follow the following approach:
- Conduct manual testing of the table view using a set of test cases.
- Use automated testing tools to validate the functionality and
performance of the table view.

Resources: The following resources will be required for testing the


new app design:
- Test cases for manual testing
- Automated testing tools
- Test environment set up for the new app design

Risks and Mitigations: The following risks and mitigations have been
identified for this test plan:
- Risk of incomplete testing due to limited time and resources.
Mitigation: Prioritize testing of the most critical aspects of the
table view.
- Risk of design issues going undetected. Mitigation: Conduct
thorough manual testing and use automated testing tools to ensure
complete coverage.

Here is an example of how the chat GPT can assist with creating release notes for a new
login window:

Prompt: "Write me release notes for the new login window in our app."
Chat GPT response:
Release Notes: New Login Window
- A new login window has been added to the app.
- The login window includes a more intuitive design and improved user
experience.
- The login window includes additional security measures, such as
two-factor authentication.
- The login window is now fully compatible with mobile devices.
- No breaking changes have been introduced with this release.

By using the chat GPT in this way, Quality Assurance Engineers can save time and
improve the efficiency of the process of creating release notes and test plans.
Using the Chat GPT for Autotest Writing and
Debugging
Autotests are automated tests that are run to ensure the quality of the software. They
can save time and improve the efficiency of the QA process, but they can also be
complex to write and debug. The chat GPT can assist with both the writing and
debugging of autotests by providing prompts and suggestions for organizing and
formatting the code, as well as helping to troubleshoot any issues that may arise.
Here is an example of how the chat GPT can assist with debugging an autotest written in
Selenium and Python:

Prompt: "I'm trying to run the following autotest code in Selenium and
Python, but it's giving me an error. Can you help me debug it?

from selenium import webdriver


def test_login():
driver = webdriver.Firefox()
driver.get("https://www.example.com/login")
driver.find_element_by_id("username").send_keys("testuser")
driver.find_element_by_id("password").send_keys("testpass")
driver.find_element_by_id("login-button").click()
assert driver.current_url == "https://www.example.com/dashboard"
driver.quit()

test_login()

Error message:

WebDriverException

Chat GPT response:

It looks like the issue is with the webdriver. The WebDriverException


suggests that there is a problem with the way the webdriver is being
initialized. One potential issue could be that the webdriver
executable is not in the correct location.

To solve this issue, you can try the following:


- Make sure that you have the correct version of the webdriver
installed and that it is in the correct location.
- Check that you have the correct version of the webdriver for your
version of Firefox.
- If the issue persists, you may need to update your version of
Firefox.

Alternatively, you can try using a different webdriver, such as


Chrome or Safari, to see if that resolves the issue.

I hope this helps! Let me know if you have any additional questions
or need further assistance with debugging your autotest.

# Tip: When requesting code assistance, be specific about the type of


solution you are looking for. Instead of just asking for code with a
mistake, make sure to ask for code with a solution. This will help
ensure that you receive code that is functional and ready to use.
Tips and tricks for QA Needs
As a Quality Assurance Engineer, you may find that you have specific needs and
preferences when it comes to the output of the chat GPT. In this chapter, we will explore
some tips and techniques for tuning the chat GPT to better suit your QA needs.

1. Use the "act as" feature to specify a particular role or persona when generating
text. This can help the chat GPT understand the context of your request and
provide a more relevant response. For example, you can use the "act as" feature
to specify that you want the chat GPT to generate text as a QA Engineer, a user,
or a developer.
2. Provide as much detail as possible in your prompts. The more specific and
detailed you can be, the more likely you are to receive a relevant and useful
response from the chat GPT. For example, instead of simply saying "Write me a
bug report," you could say "Write me a bug report for a bug that occurs when the
user clicks the 'Submit' button on the checkout page. The bug causes the page to
crash and an error message to appear."
3. Use the chat GPT to generate outlines or templates that you can then customize
and expand upon. This can help you save time and get a head start on tasks
such as creating test plans or release notes.
4. Experiment with different prompts and see what works best for your needs. The
chat GPT is a powerful tool, and you may find that certain prompts work better for
certain tasks than others.

# Tip: When having a conversation with ChatGPT, if the answer


provided does not fully address the question or further clarification
is needed, one can ask for a new prompt that will lead directly to
the desired answer
For example, instead of asking a general question like "What are the
steps to create a test plan?" one can request a more specific prompt
such as "Can you rephrase the question to provide a more specific
answer about the technical aspects of creating a test plan?"
This allows ChatGPT to better understand the user's needs and provide
a prompt that will lead directly to the desired information.

By following these tips and techniques, you can tune the chat GPT to better suit your QA
needs and improve the efficiency of your work as a Quality Assurance Engineer.
Nondisclosure Agreements and the Chat GPT
As a Quality Assurance Engineer, you may be required to sign a nondisclosure
agreement (NDA) with your company. An NDA is a legal document that prohibits you
from disclosing certain sensitive or confidential information to third parties.
In a software company, some examples of sensitive or confidential data that may be
covered by an NDA include
● Trade secrets: This includes any information that gives your company a
competitive advantage and is not generally known to the public. Examples of
trade secrets may include proprietary algorithms, business plans, and customer
lists.
● Intellectual property: This includes patents, trademarks, and copyrights that are
owned by your company.
● Personal data: This includes any information about individuals, such as their
names, addresses, or financial information.

It is important to understand that NDAs and other legal agreements may apply to more
than just the information you share with the chat GPT. It is your responsibility to
ensure that you do not violate any NDAs or other legal agreements by sharing
sensitive or confidential information with the chat GPT or with any third party.

By understanding the role of NDAs law in the use of the chat GPT, you can ensure that
you are in compliance with your legal obligations and avoid any potential legal issues.

Conclusion
In this guide, we have explored the various ways in which the chat GPT can assist
Quality Assurance Engineers in their job. We have seen that the chat GPT can help with
creating bug reports, test documentation, release notes, test plans, and even writing and
debugging autotests.
Using the chat GPT in these tasks can provide numerous benefits to QA Engineers,
including time and effort saved, improved organization and clarity of documentation, and
increased efficiency of the QA process.
Overall, the chat GPT is a valuable tool for Quality Assurance Engineers, and we hope
that this chapter has provided a helpful overview of how it can be used in the QA
process.

You might also like