Qase Docs
Help CenterAPI DocsRoadmapSign up for free
  • General
    • Qase docs
    • Get started with the Qase platform
      • Account settings
      • Projects
      • Test suites
      • Test cases
        • Test Case Parameters
        • Test case review
        • Shared steps
        • Import test cases
        • Export test cases
        • Trash bin
        • Muted Tests
        • System fields
        • Nested steps
        • Test case actions
        • Filters
      • Requirements Traceability Report
      • AI Test Case Generator
    • Execute testing
      • Test plan
      • Test runs
      • Configurations
      • Environments
    • Issues tracking
      • Defects
      • Milestones
      • Requirements
    • Analytics
      • Dashboards
      • Queries (QQL, Qase Query Language)
      • Saved queries
    • Webhooks
      • Test Case
      • Test suite
      • Test plan
      • Shared step
      • Milestone
      • Custom field
      • Test run
      • Defect
      • Test review
  • AIDEN
    • AIDEN - QA Architect
  • Guide: Action editor
  • Administration
    • Workspace management
      • Users
      • Invites
      • Groups
      • Roles
      • Fields
      • Custom fields
      • Notifications
      • Tags
      • Attachments
      • Audit logs
      • Hotkeys
    • SSO / SAML instructions
      • AzureAD
      • OneLogin
      • Google Workspace
      • Okta
      • JumpCloud
    • SCIM
      • User lifecycle management with SCIM
      • Enable SCIM
      • Users
      • Discovery features
      • Errors
    • Security
      • SOC 2 Type II / SOC 3
      • ISO/IEC 27001:2022
      • Penetration testing report
      • Subprocessors
      • Qase IP addresses
    • Billing
      • Billing options
    • Subscriptions
      • Free plan
      • Startup plan
      • Business plan
      • Enterprise plan
  • Apps
    • Issue tracking
      • Jira Cloud
      • Jira Server/Datacenter Plugin installation
      • GitHub
      • Asana
      • Linear
      • Monday
      • ClickUp
      • Trello
      • Azure DevOps
      • GitLab
      • YouTrack
      • Redmine
    • CI/CD
      • Jenkins
      • BitBucket
      • GitHub CI
      • GitLab CI
    • Chats
      • Slack
  • Automation
    • Qase API
    • Reporters
      • JavaScript
        • Playwright
        • Cypress
        • Mocha
        • Newman
        • Jest
        • WebDriverIO
        • CucumberJS
        • TestCafe
      • Python
        • Pytest
        • Robot Framework
        • Behave
        • Tavern
      • Java
        • TestNG
        • JUnit 4
        • JUnit 5
        • Cucumber 3 (jvm)
        • Cucumber 4 (jvm)
        • Cucumber 5 (jvm)
        • Cucumber 6 (jvm)
        • Cucumber 7 (jvm)
      • PHP
        • PHPUnit
        • Codeception
      • Kotlin
        • Kaspresso
    • Qase CLI App
      • XCTest
Powered by GitBook
On this page
  • What does QQL consist of?
  • Entities
  • Query
  1. General
  2. Archive

QQL structure

Last updated 4 months ago

This page is archived, please find the up to date content .

What does QQL consist of?

QQL consists of two parts: "Entity" + "Query". They both are required to perform a search query to the backend. Some examples of queries:

entity = "defect" and status = "open"

entity = "case" and project = "DEMO" and title ~ "auth" order by id desc

entity = "result" and status = "failed" and timeSpent > 5000 and 
milestone ~ "Sprint 12"

entity = "case" and isFlaky = false and automation = "To be automated"

Entity by default is 'case'. Projects by default include all projects available to user

Entities

  • Test case

  • Test run

  • Test run result

  • Test plan

  • Defect

  • Requirement

Query

Currently, QQL supports seven expression types. They are listed here in the decreasing priority order:

Expressions:

Expression Type

Example

Parenthesis

Negation

Logical Expression

or

Logical AND

Logical OR

Checking the attribute value

Sorting by field

Supported operands:

Operand

Meaning

Works with

<

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

Data types:

Data type

Possible values

Supported operands

Integer

110

>, >=, <, <=, =, !=

String

Some text

~

Boolean

True or False

is

Array

['Text1', 'Text2']; ('text 1', 'text 2'); []

in

Null

null

Functions:

Name

Return type

Arguments

Description

currentUser()

integer

-

Returns an ID of current user

now()

integer

"+Nd" - modifies returned value, adding N days.

"-Nd" - modifies returned value, substracting N days.

"+Nw" - modifies returned value, adding N weeks.

"-Nw" - modifies returned value, substracting N weeks.

"+Nm" - modifies returned value, adding N months.

"-Nm" - modifies returned value, substracting N months.

N must be an integer

Returns current timestamp

( expression )
not expression
true
false
expression and expression
expression or expression
attribute operand value
ORDER BY field ASC/DESC
here