Throughout the site, you might see words or acronyms that you’re unfamiliar with. You might have heard them in work or seen them in other articles but unsure as to their meaning. It’s important to me that I try to be as clear as possible when I create content, but sometimes I might forget my audience and use a word that is jargon or not been explained, if that’s the case, please refer to this glossary and I will hopefully have explained it here. I will add to this glossary all the time, whenever I use a word or acronym that needs explaining.


A set of functions and procedures that allow the creation of applications which access the features or data of an operating system, application, or other service. As an example, think of a website that has an address search based on the postcode. There would need to be a service that would need to be written that would take a postcode as an input, it would take that and use it to check a database, and then give an address as an output. The API refers to the service that would be created to deal with that situation.


A framework based on the Selenium framework that allows automation testing of mobile platforms such as iOS or Android.


An assembly is a runtime unit consisting of types and other resources. All types in an assembly have the same version number.

Often, one assembly has only one namespace and is used by one program. But it can span over several namespaces. Also, one namespace can spread over several assemblies. In large designs, an assembly may consist of multiple files that are held together by a manifest (i.e. a table of contents).


In software engineering, behavior-driven development (BDD) is a software development process that emerged from test-driven development (TDD).

Behavior-driven development combines the general techniques and principles of TDD with ideas from domain-driven design and object-oriented analysis and design to provide software development and management teams with shared tools and a shared process to collaborate on software development.

CSS Selector

Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation semantics (the look and formatting) of a document written in a markup language such as HTML or XML.


Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency. Git is easy to learn and has a tiny footprint with lightning fast performance.


A locator is a command or code representation of a graphical element (Text Box, Button etc) on screen in a web based application or website.


A method in object-oriented programming (OOP) is a procedure associated with a message and an object. An object is mostly made up of data and behavior, which form the interface that an object presents to the outside world. Data is represented as properties of the object and behavior as methods.


A namespace is a collection of classes, that can be organised in a way that they can all be referred to using a single unique name.


A popular and commonly used open source framework that allows the creation of tests for web applications.


Test-driven development (TDD) is a software development process that relies on the repetition of a very short development cycle: requirements are turned into very specific test cases, then the software is improved to pass the new tests, only.

This is opposed to software development that allows software to be added that is not proven to meet requirements.


In programming, a variable is a value that can change, depending on conditions or on information passed to the program.

Version Control

A software tool or system that manages and tracks history of changes in source control.


XPath is defined as XML path. It is a syntax or language for finding any element on the web page using XML path expression. XPath is used to find the location of any element on a webpage using HTML DOM structure.