Queries (QQL, Qase Query Language)
Last updated
Last updated
Queries are available in Business and Enterprise subscriptions.
Queries help you make analytical requests to get specific data from your Qase projects.
Queries are based on Qase Query Language (QQL). You can access Queries from the top-left menu.
From this page, you can manage saved queries and create new ones.
Saved Queries can be used with the QQL widget.
QQL widget allows you to leverage advanced query searches, and pin frequently used or preferred QQL searches to your dashboards to facilitate quicker and more comprehensive monitoring of testing activities.
You can click on either one of the two buttons to create a new query.
Here, you can: 1. Select the entity from the drop down
2. Write your query
3. Search the query
4. Save the query
5. Choose the fields to be displayed in the table.
QQL consists of two parts: "Entity" + "Query". Both are required to perform a search.
Here are a few examples:
Entity can be selected from the drop-down, and Projects, by default, include all projects available to a user.
If your expression contains a syntax error, the erroneous element will be highlighted in red, as well as you will see a red "x" icon appearing in the expression field:
Below are the available entities. Click on an entity to skip to the attributes available for it.
Currently, QQL supports seven expression types. They are listed here in the decreasing priority order:
Parenthesis
Negation
Logical Expression
or
Logical AND
Logical OR
Checking the attribute value
Sorting by field
<
less than
integer
<=
less than or equal to
integer
>
greater than
integer
>=
greater than or equal to
integer
=, is
equal to
integer, bool
!=
not equal to
integer, bool
~
includes
string, text
in
includes (array)
array
not in
does not include (array)
array
is empty
no value
is not empty
value exists
Integer
110
>, >=, <, <=, =, !=
String
Some text
~
Boolean
True or False
is
Array
['value 1', 'value 2'] ; ('value 1', 'value 2') ; [ ]
in
Null
null
currentUser()
integer
-
Returns an ID of current user
activeUsers()
integer
-
Returns IDs of all active users
inactiveUsers()
integer
-
Returns IDs of all inactive users
now()
integer
"+Nd" / "-Nd"- modifies returned value, adding/subtracting N days.
In "+Nd", replace d with w for weeks; m for months.
N must be an integer
Returns current timestamp
startOfDay()
integer
'YYYY-mm-dd' - modifies returned value to the start of this input date.
"+/-N[d/w/m]"
- modifies returned value by N days/weeks/months.
Returns timestamp of start of current day.
startOfWeek()
integer
'YYYY-mm-dd' - modifies returned value to the start of first day of the week (relative to the input date)
"+/-N[d/w/m]"
- modifies returned value by N days/weeks/months.
Returns timestamp of start of current week.
startOfMonth()
integer
'YYYY-mm-dd' - modifies returned value to the start of first day of the month (relative to the input date)
"+/-N[d/w/m]"
- modifies returned value by N days/weeks/months.
Returns timestamp of start of current Month.
endOfDay()
integer
'YYYY-mm-dd' - modifies returned value to the end of the input date.
"+/-N[d/w/m]"
- modifies returned value by N days/weeks/months.
Returns timestamp of end of current day.
endOfWeek()
integer
'YYYY-mm-dd' - modifies returned value to the end of first day of the week (relative to the input date)
"+/-N[d/w/m]"
- modifies returned value by N days/weeks/months.
Returns timestamp of end of current Week.
endOfMonth()
integer
'YYYY-mm-dd' - modifies returned value to the end of first day of the month (relative to the input date)
"+/-N[d/w/m]"
- modifies returned value by N days/weeks/months.
Returns timestamp of end of current Month.
identifier
Test case title,
Pre/postconditions,
Description
creator the test case.
If a test case is created by a reporter app
Replace [name] with reporter name.
Reporters:
Playwright;
cucumberjs;
cypress;
jest;
newman;
testcafe;
cucumber3; cucumber4; cucumber5;
junit4; jnuit5;
testng;
pytest;
robotframework;
xctest;
phpunit;
codeception.
Custom fields: a complex attribute with a specific syntax, see examples.
Custom field values. (by all custom fields)
Time of case creation
The user who created the case
Last modified date
Check whether the case has been deleted or not
Check whether the case has been flagged as flaky
By default, search is performed across all projects.
If required, you can specify a project code.
Test case's suite title
Test case's milestone title
Test case's tags
identifier
Defect title
Actual result
Project
Statuses
open; resolved; in progress; invalid
Severity
undefined;
blocker;
critical;
major;
normal;
minor;
trivial
The user who created the defect
If a defect has been created by a reporter app
Replace [name] with reporter name.
Reporters:
Playwright;
cucumberjs;
cypress;
jest;
newman;
testcafe;
cucumber3; cucumber4; cucumber5;
junit4; jnuit5;
testng;
pytest;
robotframework;
xctest;
phpunit;
codeception.
The user who created the defect
Time of creation
Time of update
Time of resolution
Whether the defect is deleted
Whether the defect is resolved
Defect's milestone title
Custom field values (by all custom fields)
Custom fields: a complex attribute with a specific syntax, see examples.
Defect's tags
Identifier
Title
Description
Project
Title of the plan used
Status
The user who created the run
If a test run has been created by a reporter app
Replace [name] with reporter name.
Reporters:
Playwright;
cucumberjs;
cypress;
jest;
newman;
testcafe;
cucumber3; cucumber4; cucumber5;
junit4; jnuit5;
testng;
pytest;
robotframework;
xctest;
phpunit;
codeception.
The user who created the run
Time of start
Time of finish
Time of removal
Whether the run is deleted
Whether the run is started
Whether the run is ended
Whether the run has a public link
Whether the run is automated
Run's milestone title
Custom field values (by all custom fields)
Custom fields: a complex attribute with a specific syntax, see examples.
Run's tags
Identifier
Comment
Test Run Result's case title
Test Run title
Project
Status
Passed;
Failed;
Blocked;
Retest;
Skipped;
Deleted;
In progress;
Invalid
The user who created the result
If a test run result has been created by a reporter app
Replace [name] with reporter name.
Reporters:
Playwright;
cucumberjs;
cypress;
jest;
newman;
testcafe;
cucumber3; cucumber4; cucumber5;
junit4; jnuit5;
testng;
pytest;
robotframework;
xctest;
phpunit;
codeception.
The user who created the run
Time of finish
Whether the result is deleted
Time spent (in milliseconds)
Identifier
Title
Plan's description
Project
Time of creation
Time of the last update
Time of deletion
Whether the plan is deleted
Identifier
Parent requirement's title
Project
The user who created the requirement
The user who created the requirement
Title
Description
Status
valid;
draft;
review;
rework;
finish;
implemented;
not-testable;
obsolete.
Type
epic;
user-story;
feature.
Time of creation
Time of last update
Time of deletion
Whether the requirement is deleted