In computer science and engineering, a test vector is a set of inputs provided to a system in order to test that system.
In software development, test vectors are a methodology of software testing and software verification and validation.
In computer science and engineering, a system acts as a computable function.
An example of a specific function could be
is the output of the system and
When the inputs are multi-dimensional, we could say that the system takes the form
; however, we can generalize this equation to a general form
is the result of the system's execution,
belongs to the set of computable functions, and
is an input vector.
While testing the system, various test vectors must be used to examine the system's behavior with differing inputs.
For example, consider a login page with two input fields: a username field and a password field.
In that case, the login system can be described as:
designating login successful, and
designating login failure, respectively.
Making things more generic, we can suggest that the function
takes input as a 2-dimensional vector and outputs a one-dimensional vector (scalar).
is called the input vector, and
is called the output vector.
In order to test the login page, it is necessary to pass some sample input vectors
is called a test vector.
Alternatively, the concatenation of
, can be called a test vector.