Jira and intro to JQL Flashcards
What is Jira?
JIRA is a tool developed by Australian Company Atlassian. It is used for bug tracking, issue tracking, and project management. The basic use of this tool is to track issues and bugs related to your software. JIRA has evolved into a powerful work management tool for all kinds of use cases, from requirements and test case management to agile software development.
What is Bug?
A software bug is an error, flaw or fault in a computer program or system that causes it to produce an incorrect or unexpected result, or to behave in unintended ways.
Finding a bug is one thing, but documenting it is just as important, if not more so. That’s why we want to share with you how to write the ideal bug report.
Life Cycle of ANY Defect/Bug
- Check for duplicate (JQL)
- Reproduce on different browsers (isolate the issue)
- Report in tracking system (Jira)
- Track the status (wait for the fix)
- Retest
- Close or return back to a developer
What is Bug Report?
Bug reporting demonstrates a development issue and gives your developers a place to start fixing it.
Top Seven List of Items Included in an Ideal Bug Report:
- Title
- Environment: The environment for every application can vary widely but be as specific as you can. You should always follow the given bug report template unless otherwise specified — it helps cut down on unnecessary information.
- Device: What type of hardware are you using? Which specific model?
- OS: Which version number of the OS has displayed the issue?
- Account Used: This matters if you are given test accounts by the client. It’s best to then include email + password in the issue report. When the developers get the bug, they understand which account was used to discover the issue.
- Testing App Version: Which version number of the application are you testing? Simply writing “latest version” or “App Store Version” won’t cut it, since some bugs are version-specific and it’s hard to know the app store version when searching the store at a later date – make sure you include this specific information.
- Connection type (if applicable): If the application you’re testing is reliant on Internet connectivity, are you on WiFi, Ethernet, or cellular data? What is the speed of the connection?
- Reproducibility Rate (if applicable): How many times have you been able to reproduce the error, using the exact steps you’ve taken to activate the bug? It’s also useful to report how many times the bug has been reproduced vs. the number of attempts it’s taken to reproduce the issue, in case it’s an intermittent occurrence. - Steps to reproduce: Steps HAVE to answer 3 questions: WHAT HAPPENED? WHERE IT HAPPENED? UNDER WHICH CIRCUMSTANCES? We number our steps from beginning to end so developers can easily follow through by repeating the same process.
- Expected Result: What should? This is where you put on your end-user cap and think about the desired outcome and offer deeper insights than “the app should not crash.”
- Actual Result: Here’s the result of the bug. Does the application crash? Does nothing happen at all? Is an error displayed?
- Visual Proof: (screenshots, videos, text) Any pertinent screenshots, videos, or log files should be attached.
- Severity/Priority: Sharing the severity offers a degree of impact the bug has on the functionality of the system and helps the dev team prioritize their work.
JIRA Query Language (JQL)
JQL stands for Jira Query Language and is the most powerful and flexible way to search for your issues in Jira. JQL is for everyone: developers, testers, agile project managers, and business users.
Simple query in JQL (aka a “clause”) consists:
Field — Fields are different types of information in the system. Jira fields include priority, FixVersion, issue type, etc.
Operator – Operators are the heart of the query. They relate the field to the value. Common operators include equals (=), not equals (!=), less than (<), etc.
Value – Values are the actual data in the query. They are usually the item for which we are looking.
Keyword – Keywords are specific words in the language that have special meaning
Important Keywords in JQL
AND
This will only return issues that match both clauses (are part of the Collaboration project and have their status set to “In Progress”)
project = Collaboration AND status = “In Progress”
OR
Returns all issues from either the Collaboration project or that have their status set to “In Progress”.
project = Collaboration OR status = “In Progress”
IS
This will return all issues that have no description.
description IS EMPTY
Operators
!=
status != “To Do”
Returns all issues except for those that have their status set to “To Do”
IN
status IN (“To Do”, “In Progress”, “Closed”)
is the same as
status = “To Do” OR status = “In Progress” OR status = “Closed”
Find all issues which either have the status “To Do”, “In Progress” or “Closed”
Reverse
- NOT IN