Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals....

23
Dani Vainstein 1 VBScript Session 1

Transcript of Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals....

Page 1: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 1

VBScript

Session 1

Page 2: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 2

Subjets for Session 1

Vbscript fundamentals.

Variant subtypes.

Variables.

Option Explicit statement.

Keywords.

Scope and liftime of variables.

Dim, Private and Public statements.

Rem statement.

Page 3: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 3

What is VBScript?

A Safe subset of visual basic

The VBScript Code is case Insensitive.

Microsoft Visual Basic Scripting Edition brings active scripting to a wide variety of environments, including Web client scripting in Microsoft Internet Explorer and Web server scripting in Microsoft Internet Information Service (IIS).

Page 4: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 4

Microsoft® Script Timeline

Internet Explorer 3.0

8/96

Version 1.0

Version 2.0

IIS 212/96

Internet Explorer 4.0

8/97

Version 3.0

Windows 98

Version 3.1

Version 4.0

Version 5.0

VisualStudio 6

Internet Explorer 5.0 Win NT 5.0

Note: QuickTest uses VBScript 5.6Note: QuickTest uses VBScript 5.6

Page 5: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 5

Scripting for Specific Platforms

VBScript

designed to run on multiple platforms that use the ActiveX Scripting Interface.

VBA (VB for Applications)

More sophisticated customization.

Power user focus, natural upgrade, superb integration

Visual Basic

Best tool for distributed client/Server solutions.

Powerful, robust, scalable.

Page 6: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 6

VBScript Data Types

VBScript has only one data type called a Variant.

A Variant is a special kind of data type that can contain different kinds of information, depending on how it is used.

Because Variant is the only data type in VBScript, it is also the data type returned by all functions in VBScript.

At its simplest, a Variant can contain either numeric or string information.

A Variant behaves as a number when you use it in a numeric context and as a string when you use it in a string context.

Page 7: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 7

VBScript Data Types Variant Subtypes

Beyond the simple numeric or string classifications, a Variant can make further distinctions about the specific nature of numeric information.

For example, you can have numeric information that represents a date or a time.

When used with other date or time data, the result is always expressed as a date or a time.

You can also have a rich variety of numeric information ranging in size from Boolean values to huge floating-point numbers.

Page 8: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 8

VBScript Data Types Variant Subtypes

SubtypeDescription

EmptyVariant is uninitialized. Value is 0 for numeric variables or a zero-length string ("") for string variables.

NullVariant intentionally contains no valid data.

BooleanContains either True or False.

ByteContains integer in the range 0 to 255.

IntegerContains integer in the range -32,768 to 32,767.

Currency-922,337,203,685,477.5808 to 922,337,203,685,477.5807.

LongContains integer in the range -2,147,483,648 to 2,147,483,647.

SingleContains a single-precision, floating-point number in the range -3.402823E38 to -1.401298E-45 for negative values; 1.401298E-45 to 3.402823E38 for positive values.

DoubleContains a double-precision, floating-point number in the range -1.79769313486232E308 to -4.94065645841247E-324 for negative values; 4.94065645841247E-324 to 1.79769313486232E308 for positive values.

DateContains a number that represents a date between January 1, 100 to December 31, 9999.

StringContains a variable-length string that can be up to approximately 2 billion characters in length.

ObjectContains an object.

ErrorContains an error number.

Page 9: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 9

Variables

A variable is a convenient placeholder that refers to a computer memory location where you can store program information that may change during the time your script is running.

For example, you might create a variable called ClickCount to store the number of times a user clicks an object on a particular Web page.

you only have to refer to a variable by his name to see or change its value.

Page 10: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 10

Declaring Variables

You declare variables explicitly in your script using the Dim statement, the Public statement, and the Private statement. For example: Dim DegreesFahrenheit

You declare multiple variables by separating each variable name with a comma. For example:

Dim Top, Bottom, Left, Right

Page 11: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 11

Declaring Variables

You can also declare a variable implicitly by simply using its name in your script.

That is not generally a good practice because you could misspell the variable name in one or more places, causing unexpected results when your script is run.

For that reason, the Option Explicit statement is available to require explicit declaration of all variables.

Page 12: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 12

Option Explicit Statement

Forces explicit declaration of all variables in a script.

If used, the Option Explicit statement must appear in a script before any other statements.

When you use the Option Explicit statement, you must explicitly declare all variables using the Dim, Private, Public, or ReDim statements. If you attempt to use an undeclared variable name, an error occurs.

Tip   Use Option Explicit to avoid incorrectly typing the name of an existing variable or to avoid confusion in code where the scope of the variable is not clear.

Page 13: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 13

Naming Restrictions

Must begin with an alphabetic character. Cannot contain an embedded period. Must not exceed 255 characters. Must be unique in the scope in which it is declared.

Tip   meaningfull prefix to variables to indicate the subtypes i.eiCounter (integer), strName (String), bFlag (Boolean), dteToday (Date)

Tip   meaningfull prefix to variables to indicate the subtypes i.eiCounter (integer), strName (String), bFlag (Boolean), dteToday (Date)

Page 14: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 14

VBScript Keywords

Empty The Empty keyword is used to indicate an uninitialized variable value.

NullThe Null keyword is used to indicate that a variable contains no valid data.

TrueThe True keyword has a value equal to -1.

FalseThe False keyword has a value equal to 0.

NothingThe Nothing keyword in VBScript is used to disassociate an object variable from any actual object.

Page 15: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 15

Scopes and Lifetimes

A variable's scope is determined by where you declare it. When you declare a variable within a procedure, only code within that procedure can access or change the value of that variable. If you declare a variable outside a procedure, you make it recognizable to all the procedures in your script. The lifetime of a variable depends on how long it exists. The lifetime of a script-level variable extends from the time it is declared until the time the script is finished running. At procedure level, a variable exists only as long as you are in the procedure. ou can have local variables of the same name in several different procedures because each is recognized only by the procedure in which it is declared.

Page 16: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 16

Dim Statement

Dim varname[([subscripts])][, varname[([subscripts])]] . . .

Declares variables and allocates storage space.Variables declared with Dim at the script level are available to all procedures within the script. At the procedure level, variables are available only within the procedure. You can also use the Dim statement with empty parentheses to declare a dynamic array.Note   When you use the Dim statement in a procedure, you generally put the Dim statement at the beginning of the procedure.

Page 17: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 17

Private Statement

Private varname[([subscripts])][, varname[([subscripts])]] . . .

Declares private variables and allocates storage space.

Private statement variables are available only to the script in which they are declared.

The following example illustrates use of the Private statement:

Private MyNumber ‘--- Private Variant variable. Private MyArray(9) ‘--- Private array variable. ‘--- Multiple Private declarations of Variant variables. Private MyNumber, MyVar, YourNumber

Page 18: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 18

Public Statement

Public varname[([subscripts])][, varname[([subscripts])]] . . .

Declares public variables and allocates storage space.Public statement variables are available to all procedures in all scripts.You can also use the Public statement with empty parentheses to declare a dynamic array.

Public MyNumber ‘--- Public Variant variable. Public MyArray(9) ‘--- Public array variable. ‘--- Multiple Public declarations of Variant variables.

Public MyNumber, MyVar, YourNumber

Public MyNumber ‘--- Public Variant variable. Public MyArray(9) ‘--- Public array variable. ‘--- Multiple Public declarations of Variant variables.

Public MyNumber, MyVar, YourNumber

Page 19: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 19

Rem Statement

Includes explanatory remarks in a program. Rem Comment‘ Comment

As shown in the syntax section, you can use an apostrophe (') instead of the Rem keyword. If the Rem keyword follows other statements on a line, it must be separated from the statements by a colon. However, when you use an apostrophe, the colon is not required after other statements.

MyStr1 = "Hello" : Rem Comment after a statement separated by a colon. "MyStr2 = "Goodbye' This is also a comment; no colon is needed. Rem Comment on a line with no code; no colon is needed.

MyStr1 = "Hello" : Rem Comment after a statement separated by a colon. MyStr2 = "Goodbye" ' This is also a comment; no colon is needed. Rem Comment on a line with no code; no colon is needed.

Page 20: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 20

Assigning Values to Variables

Values are assigned to variables creating an expression as follows:

the variable is on the left side of the expression and the value you want to assign to the variable is on the right.

For Example :

B = 200 B = 200

Page 21: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 21

Lab 1.1

Page 22: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Dani Vainstein 22

Lab 1.1

Write a small program

Declare using Dim 2 variables (a,b)

Initialize the variables using a=“10” and b=“5”

Apply the sum to variable c.

Report to QTP the sum of the variables.

Use remarks.

TipTip : Conversion

Now declare in the header Option Explicit

Page 23: Dani Vainstein1 VBScript Session 1. Dani Vainstein2 Subjets for Session 1 Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement.

Make sure to visit us

TutorialsArticlesProjectsAnd much more

www.AdvancedQTP.com

23