QA Tools: Custom Test Case Generator in Google Sheet using Google App Script
When testers have to document test cases, it's usually done in the traditional format of putting all your test cases and steps in one sheet. Once it accumulates, for me it can be overwhelming to look at.
It looks something like this:
As a solution, I decided to make a tool that will help me focus on only drafting my test scenarios and look at my test cases one at a time. I'd like to share this here with everyone else who's like me. Hopefully, it can make your testing journey even a little better.
Test Case Generator Tool
This tool is for QA or non-QAs who need to write test cases.
What it can do:
Write your test scenarios in one tab
Focus on writing steps for each test case one sheet at a time
Generate an import file
Generate a test execution document
Sample test execution document:
Scroll to the bottom to see how it works.
Sheet
Purpose
Test Scenarios
This is where you set the details for this test set/the project/story/epic where you're creating the test cases under - JIRA Card ID (user input needed) - JIRA Card Name (user input needed) - JIRA Card Link (user input needed) - Test Execution Document (auto-generated)
Write your test scenarios in this tab. Each test scenario row will be generated with a new sheet where the sheet name will use the TC ID, hence the TC ID must be unique.
There are 7 columns that you can set for other fields that may be applicable to you. You can make it anything like "Test Case Type", "Component", "Test Automation Status" etc.
Currently, you must not reorder any columns or rows.
TC Template
This will be the template used for each test case generated in sheets.
You can change cell formatting here (width, height, color, etc) but you cannot reorder columns or rows.
Importer
This sheet can be exported as CSV the imported to your test case management tool.
(not sure yet if this will apply to all, but I've used in Xray JIRA add-on)
Buttons
Purpose
Create TCs
Coverts each test scenario row into one sheet each.
Each test scenario row will be generated with a new sheet where the sheet name will use the TC ID, hence TC ID must be unique.
Update TCs
Updates the generates test case sheet to the current content in the Test Scenarios tab. Since the TC ID matches with the generated sheet name, it will update its equivalent sheet.
Create Import File
Creates an import file that you can import as CSV that can be imported to your test case management tool.
(not sure yet if this will apply to all, but I've used in Xray JIRA add-on)
Create Test Execution Document
Creates a Google Doc file in a test execution format.
On your first time to trigger any actions, it will ask you to authorize the script to run. Simply click Continue and select your Google account.
If it shows Google hasn’t verified this app, simply click Advanced > Go Test Case Generator_v1.0. (unsafe). I'm not getting information from you. It simply gives permission to the app to do some changes with Google Script.
Click Allow. Go back to your sheet and click the same button to run it successfully this time.
It's been more than a year now since I've set up our bug tracking in JIRA. In there, I've set up an Issue Root Cause custom field where it had the following options: Incorrect coding Unclear / Missing / Incorrect Requirements Unclear / Missing / Incorrect Design Insufficient / Duplicated / Incorrect Testing Deployment Issue Environment Third-party issue My thoughts when I listed these as options is so that it would be easy to identify which team is responsible for the cause why we had that bug. They're pretty straightforward - Incorrect coding is of course when the developers didn't follow the expectations, Unclear / Missing / Incorrect Requirements is because there's a gap in the requirement, and so on. And also, it's because that was the way it's done in my previous company so that's also my initial knowledge source. Recently, I've been reading a few articles regarding Shift Left, reducing silos, and generally how quality is a team activit...
First things first, what does a "bug" mean in the software development process? A bug is what we call a behavior that is different from what's expected based on the provided requirements. A tester's main purpose is to find and report bugs in the system as early as possible. In some companies, it's sometimes called a "defect". They actually mean slightly different if we go by the book. In this post, I'll be covering the lifecycle of a software bug which are issues that are found during the development phase. You're testing the system and you found a bug. What is the first thing you do? a) You immediately write a bug report b) You try to reproduce it c) You complain "How could this very obvious bug reach QA? Dev should've spotted this earlier ugh." The formal answer is B (I'll just let you figure out what's the informal answer), It's common for a QA to be gaslighted. "I cannot reproduce this bug.", "It doesn...