Table of Contents

Class NamedScript

Namespace
CSF.Screenplay.Selenium
Assembly
CSF.Screenplay.Selenium.dll

A model representing a pre-written piece of executable JavaScript, which accepts no parameters and which returns no result.

public class NamedScript : NamedScriptBasis, IHasName
Inheritance
NamedScript
Implements
Inherited Members

Remarks

Developers are encouraged to represent JavaScripts that they wish to execute in the web browser using this type (and related types, see "See Also"). Where the script accepts parameters and/or returns a result, choose a type which specifies appropriate generic type arguments for those parameters and returned type.

For scripts which are created in this manner, getting an IPerformable or IPerformableWithResult<TResult> for those scripts is very easy and type safe. Use the ExecuteAScript method from the PerformableBuilder and the compiler will use the generic type arguments of this type to select an appropriate overload which provides type-safety for specifying the parameter values and the return type, as appropriate.

Another benefit is that scripts defined and stored in instances of this type are reusable and easily catalogued. See the Scripts helper class for an example of a catalogue of script objects which may be executed. Once again, developers are encouraged to follow this pattern in their own applications/tests which use Screenplay & Selenium.

Constructors

NamedScript(string, string)

Initialises a new instance of NamedScript.

public NamedScript(string scriptBody, string name)

Parameters

scriptBody string

The body of the JavaScript

name string

The human-readable name of the script

Exceptions

ArgumentException

If either parameter is null or whitespace-only.

See Also

NamedScript<T1>
NamedScript<T1, T2>
NamedScript<T1, T2, T3>
NamedScript<T1, T2, T3, T4>
NamedScript<T1, T2, T3, T4, T5>
NamedScript<T1, T2, T3, T4, T5, T6>
NamedScript<T1, T2, T3, T4, T5, T6, T7>
NamedScriptWithResult<TResult>
NamedScriptWithResult<T1, TResult>
NamedScriptWithResult<T1, T2, TResult>
NamedScriptWithResult<T1, T2, T3, TResult>
NamedScriptWithResult<T1, T2, T3, T4, TResult>
NamedScriptWithResult<T1, T2, T3, T4, T5, TResult>
NamedScriptWithResult<T1, T2, T3, T4, T5, T6, TResult>
NamedScriptWithResult<T1, T2, T3, T4, T5, T6, T7, TResult>