TAL (Test Analyses Language)
TAL is a constructed like a structural language that we use to describe our Tests and Test Cases. This language is inspired with syntax of programing languages. Main challenge is to solve discomfort and confusion related with test analyses and bring more effectivity and easiness into review process.
ELOQUENTAL
Main Entities:
SCENARIO
Short name or basic description what we should test.
Keywords and how to use them: Keywords should be used for clear and simple definition necessary steps, actions and operation for SUT (System Under Test) testing.
PURPOSE
Describing target, objective or goal of this test and why we are writing this.
GO { WHERE | HOW }
Action to follow some link or application. Basic step in many scenarios. Could be replaced with SNIPPETs for better understanding:
WHERE: should be used like definition for target, objective, goal, aim or destinationHOW: should be used for description of
OPEN { WHAT | HOW }
Action used to open some entity e.g. file, link, application, snippet etc. It is starting action and can be used multipli during the test scenario. This action should be finished by CLOSE action.
CLOSE { WHAT | HOW }
Action used to open some entity e.g. file, link, application, snippet etc Ending action for OPEN. Should be used like last step of scenario.
DO { ADD | USE | VALIDATE | TRY | DELETE | MODIFY }
Execution command used to describe exact action that should be accomplished by. Can by counted by numbers.
ADD: should be used to connect, attach, append, affix or link new or exist entity.USE: should be used for function description like employ, utilize, make use of, dispose or exert.VALIDATE: should be used to confirm, acknowledge, certify, validate, affirm or establish behavior or function.TRY: should be used like description what should be investigated like inquire, research or question.DELETE: should be used in NEGATIVE scenarios mostly for declaration of correct system behaviour usually in edge cases.MODIFY: should be used for adjust, adapt, regulate, alter or fix some entity
DATA { WITH | LIKE | LIMIT }
Data driven testing should be focused on elements and declaration for limitations and variability of described test scenarion with those keywords:
WITH: qualify data entity necessary to execution or scenario like valid login credentials or valid file attachment to upload.LIKE: qualify data parameters used like role (who) or permission definition mostly.LIMIT: qualify data parameters used for declaration of limitation, border, boundary, line or restriction.
VERIFY | CHECK { CAN or CAN'T WHAT | CAN or CAN'T , WHERE | CAN or CAN'T , HOW }
Used usually for declaration last steps in scenario of definition for Test Steps.
WHAT: qualify what should be verified and should be referenced for another definition like DO or DATA for example.WHERE: declare where should be verification executed for example Testing Environment or another special conditionsHOW: qualify how should be verification executed based on condition like tester seniority, development process maturity etc.
CONDITION { IF, THEN, ELSE }
This form should be used everywhere in description for GO, DO, DATA and VERIFY.
IF: statement for multi-choice definition with conditional meaning. Most used in combination IF->THEN | ELSETHEN: declare what should happen when IF statement is VALID.ELSE: declare what should happen when IF statement is INVALID.
CYCLE { REPEAT, UNTIL | DO, WHILE }
This form should be used everywhere in description for GO, DO, DATA and VERIFY.
REPEAT -> UNTIL: declare activities to REPEAT till condition(s) UNTIL are not fulfilled.DO -> WHILE: declare activities to DO till condition(s) WHILE are VALID.
Example 1
Description
PURPOSE OF THIS Test case Create, Read, Update, Delete Task in the edit formCHECK if created Tasks/bugs are displayed correctly on the Issues main pageGO to the Projects/ select Project / open Module Issues/ open Task edit formCHECK visual UI fits with definition in small/big viewDO Edit Task name with max.255 charactersIF Edit Task with more than 255 characters - negativeDO Refresh & ShareDO Created clone -> DO Delete clone -> DO Restore cloneDO Delete Task -> DO Restore TaskDO Modify Labels/ Description/ Status/ PriorityDO Link Main Entity -> DO Unlink Main EntityDO Link Roadmap -> DO Unlink RoadmapDO Modify estimated time & Add spent time & Due DateDO Modify Author/ Assignee/ CollaboratorsDO Write a comment -> DO Edit commentDO Delete comment -> DO Restore commentDO Link new/created Issues -> DO Edit, clone child entitiesDO Switch between pages in the +Select or Add Issues (Task or Tags) tabDO Link new/created Test -> DO Edit, clone child entitiesDO Switch between pages in the +Select or Add Test Case tabDO Change Rows per pageDO Unlink Issue / Unlink Test
Test data
- ENVIRONMENT: Training
- LIKE: Super Admin | user with permissions | user without permissions
- Browser: Mozilla | Chrome | Safari
Expected result
This test case verifies that
- Super Admin: Can DO CRUD Task edit form
- User with permissions: Can DO CRUD Task edit form
- User without permissions: Can NOT DO CRUD Task edit form
Test steps
OPEN modul Issues -> Check created Tasks/BugsOPEN Task edit formEDIT Task name under/over 255 charactersDO Refresh pageDO Delete -> Restore TaskDO Share pageDO Create Clone -> Do Modify CloneDO Delete -> Restore CloneDO Modify Labels/ Description/ Status/ PriorityDO Link Main Entity & Roadmap -> Unlink themDO Modify estimated time & Add spent time & Due DateDO Modify Author/ Assignee/ CollaboratorsDO Write a comment -> Do Edit -> Do Delete -> Do RestoreDO Switch between pages in the +Select or Add Issues (Task or Tags) tabDO Link new/created Issue -> Do Unlink Issue (Task & Task )DO Modify Status Priority/ Labels /Owner by child entities (Issues)DO Change Task to Task/ Bug to BugDO Link new/created Test -> Do Unlink TestDO Modify Status Priority/ Labels /Owner by child entities (Test)DO Switch between pages in the +Select or Add Test Case tabDO change Rows per page
Example 2
Description
PURPOSE OF THIS Test case -> Create, Read, Update, Delete Story andDO Bulk Edit on the Design main pageGO to the Projects / select Project / open Module DesignCHECK visual UI fits with definitionCHECK created Story & Epic are displayedDO create new StoryDO edit Story->Epic->StoryDO click for MODIFY Status/ Priority/ LabelDO delete Story->DO restore StoryDO change Rows per pageIF logged as SuperAdminTHEN can Full Bulk Edit
Test data
- ENVIRONMENT: Training
- LIKE: Super Admin | user with permissions | user without permissions
- Browser: Mozilla | Chrome | Safari
Expected result
This test case verifies that
- Super Admin: Can DO CRUD Story and Bulk Edit
- User with permissions: Can DO CRUD Story | Can NOT DO Bulk Edit
- User without permissions: Can NOT DO CRUD Story neither Bulk Edit
Test steps
OPEN modul DesignCREATE New Story via +DesignCHANGE to Epic-> back to StoryEDIT Status/ Priority/ LabelDELETE at least 5 StoriesCLICK Show With DeletedRESTORE all StoriesCHANGE Rows per pageIF you are logged in as SuperAdmin,THEN execute full Bulk Edit
Testing Basics
Test management is an essential part of the software testing process. It involves planning, organizing, and controlling the testing activities to ensure that the software meets the end-users' requirements.
QA Metrics
Measurithe Effectiveness of Software Testing with QA Metrics (Definitions, Types, Formulas & Examples)