A step in Selenese script. See also ClassicSelenese > Auto-generated Selenese commands and Selenium IDE documentation > Selenium Commands – “Selenese”.

Making terms not test-specific

Selenium and SeLite are not test-specific. However, Selenium IDE GUI and its documentation refers to some features with word test. The following terms make it more general.


Case stands for test case. It consists of Selenese commands and comments. It’s an .html file with a special format.


Suite stands for test suite. It refers to (contains) one or more cases. It’s an .html file with a special format.

A suite and any of its cases don’t have to be in the same folder. Therefore a case can belong to multiple suites. If a case defines any functions, other cases in the same suite can reuse them.


When some functionality applies to both cases or suites, SeLite calls them scripts. To differentiate them from Javascript (or other scripts), they are sometimes called Selenese scripts. Some other terms are at TestMethods and TestMethodsTheory.

Side note: SelBlocks used to call Selenese functions (defined by function...endFunction) scripts. (Originally they were defined by script...endScript.) However, both SelBlocks and SelBlocks Global/SeLite refer to them as functions rather than scripts.


Word function can refer to a Javascript function (whether in Selenium Core scope or not), or to a function defined by SelBlocks Global/SelBlocks construct function...endFunction. Where it’s unclear, let’s call the later Selenese function or script function.


Set is a configuration set as per Settings > Sets.

Core scope

Selenium Core scope, or just Core scope, is global scope (as in JavascriptEssential > Scope) in Core extensions and in Selenese scripts.

Implementation notes:

Core extension

Selenium Core extension, or just Core extension, extends functionality available to Selenese scripts. It doesn’t provide any visual interface. Generally it can be loaded from Selenium IDE or Webdriver. But even if a Core extension is for Selenium IDE only, it’s called a Core extension rather than IDE extension. Core extensions from SeLite are like that: they are Selenium IDE-specific and they don’t work with Webdriver.

IDE extension

Selenium IDE extension, or just IDE extension, extends GUI of Selenium IDE. It doesn’t interfere with Selenese scripts. However, it may provide configuration or other interface used by a Core extension, and those can be packaged together in a Firefox add-on.

Extension of Selenium IDE

This is either a Core extension but for Selenium IDE only, or an IDE extension.

These terms are not SeLite-specific. The goal here is to clarify possible/desirable features and connections between scripts and the tested application. This mentions benefits and shortcomings of various possible approaches.



What is being controlled or tested, with


Test consists of Selenese scripts, custom Core extensions and script DB.

Test session

It contains custom runtime variables in the test system, which serve for

Knock-on defects

Also ‘silent defects’ are ‘hidden’ or mysterious errors, whose buggy effect

Data and databases

Test input data

Also ‘input data’ is data, that is used by the test, especially

It can be

app DB

App DB is an SQLite database (a file). It is the same as the application’s database (if in SQLite), or its export to SQLite.

script DB

Script DB is an SQLite database (a file) used by scripts. (It’s not a database containing scripts or steps, neither a database of data to feed the tests.) In automated testing this is the test’s expectation of the application data. It’s usually populated from an (optionally filtered) export of app DB. It is

vanilla DB

Vanilla DB is a database (in SQLite) used for reloading script DB and app DB. It requires app DB to be in SQLite. It’s a snapshot of exported app DB, to which you can revert script DB when the script and app get out of sync.