Aztaz Logo
Taz Demo
home solutions about us support contact

AZTAZ Software - Getting Started Guide: Testing the IP address of your Windows machine

Welcome to Getting Started with TAZ! In this first, hands-on introduction, you only need a Windows PC and a copy of TAZ to begin writing and running tests. We know the example test is very simple and you probably will never do anything this basic, but it illustrates the TAZ method. Remember, TAZ users are testing many different products and communicating over many different protocols, so a simple test that everyone can follow is a good place to start.




Step One: Connecting to the DOS Shell

We'll get started by using TAZ to connect to a DOS shell. In the real world, you will be using your own Device Under Test (DUT). TAZ uses Equipment Table data to connect with all types of equipment. Let’s use a sample equipment file to populate our table. First right click sample equipment file and choose "save as" to download to the Desktop.

Now, from TAZ, navigate to the "Connect Equipment" screen, and click the "Load" button.

A windows dialog box will open. Browse to the equipment file that was just saved.

If you’d like more information on Equipment Tables check out our Equipment Table tutorial.

    (click for full-size)


Click the "DOS Shell" row in your equipment table to select (it turns blue), and click the Connect / Reserve Equipment button on the upper right side of the screen to connect.

Once connected, the "Connect Equipment" light will turn green, as shown here:

Congratulations! TAZ is now connected to a DOS shell. Next, let’s write our first TAZ

TestCase
.


Step Two: Writing Your First Test

Our assignment is to test that a DHCP router has been assigned an IP Address in the range 192.168.0.10 to 192.169.0.127. Let’s move to the TAZ Write Tests screen to begin writing our test.

    (click for full-size)

The left-hand side of the screen is an equipment communication pane. This is where we can check (and record) responses from our connected equipment -- in this case DOS.


Type "ipconfig" in the text input field located in the bottom-left of the screen. When you hit enter, the command is sent to DOS and your PC's response is displayed in the equipment communication window.

To finish configuring and running your test, please follow along with this video:

As you can see in the video, information is sent to the windows DOS shell using the Send{} command, which, in this case, is:

Send{1|ipconfig|DOS((Shell))}

Then we're using the Xpect{} command to check if our IP address is present in the Return.

Our Xpect{} command looks like this: Xpect{IP Address&192.168.0.13}



Step Three: Setting a Range

So far, our test will only pass with one specific IP Address, 192.169.0.13. Let's change our Xpect{} command so it recognizes a range.

For more information on setting ranges using Xpect{}, please follow along with this video:


As you can see in the video, the Xpect{} command will recognize a range of numbers by enclosing the range in square brackets.

    (click for full-size)

In this case, the syntax of our Xpect{} command looks like this:

Xpect{IP Address&192.168.0.[0-127]}


With this quick update, we've changed our test functionality considerably, and any IP address we receive from our DHCP router that falls in the appropriate range will pass testing.

To run our saved
TestCase
, we select it on the Setup Runs screen and start the test on the Run Tests screen. We can see the results on the View Results screen.

Here is the output from our test:


Of course, there are better ways to test DHCP. Here are some things that TAZ can do:

  • Change DHCP (or any) settings on any router, through CLI, SNMP, or a Web GUI
  • Communicate with any equipment that has a remote interface
  • Control any number of PCs or Linux boxes
  • Power cycle or soft restart any equipment
  • Control SONET and Data instruments, like TestCenter, Ixia, or Diversifeye and use any functionality on those instruments
  • And this can all be part of a network that TAZ can test.



Where to go from here

There are many videos, documents, and manuals that may be found in this Help section that demonstrate the features and usage of TAZ. When writing your TestCases, keep in mind that TAZ is meant to duplicate your manual actions, so the best way to write a test is to write down what you do manually, then expand from there. You can also use the Manual TestStep feature from the Write Tests screen. This will document your
TestCase
where you can incrementally replace your manual steps with automated ones.

Thanks for checking out our Getting Started Guide! If you have any questions about TAZ syntax, or how to automate more complex tests, feel free to check out our other online videos and support.

Have a great day!
Zip links will download associated files.

+   

TAZ Overview

+   

TAZ Features

+   

TAZ GUI

+   

TAZ Commands

+   

TAZ Test Solutions

A sample equipment tableCSV

We Value Your Ideas

We are continually improving to better meet your needs. Please contact us if you have a suggestion; every submission will get a personal response.

Name:

Title:

Email: *

Phone:

Preferred Contact Method:

Phone Email

Suggestion:

Frequently Asked Questions

We are continually improving to better meet your needs. Please contact us if you have a question; every submission will get a personal response.


Q: I have a test that I would like to automate, but I’m not sure how to start?

A: TAZ is designed to duplicate your manual actions. So start by writing down what you do manually. Break it into steps, usually some action followed by an expected outcome. The TAZ Write Tests screen has the Add Manual TestStep button for this. After you save the
TestCase
you can run it manually and then incrementally convert manual steps to automated. For more info, see our Manual TestCase video.

Q: I wrote my test down, now what about the equipment I use?

A: Once your test is written down, note the different equipment that you used, physical and virtual. This may be one or more DUTs, test equipment, or even a DOS shell. You will enter connection information for this equipment in the
Equipment Table
on the TAZ Connect Equipment screen.

The required connection information for each type of equipment is in the TAZ Command Manual. But, the easiest way is to start with a colleague's
Equipment Table
and modify it for your use. You can also download the TAZ Sample Equipment file in the TAZ Help section. Look first for the protocol that you use (e.g. Telnet) and then modify the IP Address, Login, etc. There are several tutorials that show how to work with equipment here:

Q: I don't understand how to change my manual test steps to automated?

A: First, make sure that the manual test steps are broken into to small actions. You could (incorrectly) have a
TestCase
with one
TestStep
:
    Step 1=
  • Action: Test the DUT
  • Expected: It passes.
This isn’t very helpful. What you want are steps like:
    Step 1=
  • Action: Send Show Version command to the DUT
  • Expected: The DUT returns text that includes, "version 1.2.3"
To send a command to a DUT you will use the
Send{…}
command. When you evaluate the output you will use
Xpect{…}
. Check our
Send{…}
command video for more details.

Q: Where can I find more details on TAZ commands?

A: The
TAZ Command Manual
is part of the TAZ installation, located in the TAZ directory. From your
TestCase
you can also double-click a command and TAZ will open the Command Manual to that command. If you double-click an empty line, TAZ will open the Command Manual to the Table of Contents.

Q: Can I capture a runtime value in one TestStep and use it in a later TestStep?

A: Yes. With
PassOut
commands, you can capture, modify, and use runtime values. The
PassOutBetween{…}
command can be used to capture a value and place it in the TAZ
PassOut Table
.
PassOut
values can then be referenced using the PO[] syntax, similar to referencing values inside an array. See the
TAZ Command Manual
for usage of the many
PassOut{…}
commands.

Q: What about my legacy tests that are written as TCL scripts?

A: TAZ can run scripts in many programming languages, including TCL. You reference the TCL file with the
Script{…}
command. Any output will become part of the TAZ
Return
where other TAZ commands like
Xpect{…}
can be used.

Q: What about Data Driven testing? I want to pass testing parameters into my test.

A: Yes. You can use the TAZ
Variable Table
to pass in values. See the TAZ User Manual. (PDF)

Q: Can I modify parts of my TestCase at runtime?

A: Yes. This is done with a
Search and Replace Table
from
TAZ Setup Runs >> Substitutions.

Q: My tests need to run in many different scenarios. Can TAZ do this?

A: Yes. Using
Variable Tables
this can easily be done. See the tutorial on MultiEnvironment Testing.(PDF)

Q: I need to run the same group of tests with the same equipment in the middle of the night. Is there a simple way to recall and run the entire testing setup?

A: Yes. In TAZ an entire testing setup is called a
Config
.
Configs
can be saved and scheduled to run in many different ways. You can also make many runtime changes. See the TAZ User Manual. (PDF)

Q: A colleague in a different department has tests that I would like to run. We have the same equipment topography. How can I run them on my equipment with different IP addresses, etc.?

A: There are several ways. In TAZ we call this portability. Often it is as simple as just selecting your equipment from your
Equipment Table
. You can also use a
Search and Replace Table
, or have your colleague create a
Config
which you can run substituting your equipment.

Q: I need to run the same command many times. Do I have to write it out many times?

A: No. If it is exactly the same command, use
Send{…}
, with
ArgH
to set the number of times. With
Send{…}
you can also send until you see a specified result come back. Look at
Loop{…}
if the command is modified each time it is sent.

Q: How do I send a command multiple times, incrementing parameters on each iteration.

A: Use the
Loop{…}
command to repeat one or more commands. You may increment by decimal, hex, MAC addresses, IP Addresses, even lists of strings. Loops may be nested to 99 deep.

Q: I have the same group of commands for provisioning that I use in different TestCases. I don’t want to type them over and over again. Is there an easy way to manage this?

A: Yes. It is best practice to put them in their own
TestCase
and which can be called with
SubCase{…}
. Not only is it more convenient, but should you need to make changes you only need to do it in one place.

Q: How do I execute commands only if a previous step fails?

A: Here are two ways:
  • The Conditional{…}
    command. “Failure of a step” is one of many conditions that when met will trigger an action. There are many actions, including skipping and running one or more
    TestSteps
    .
  • Send{…}
    has an If/Then/Else parameter in
    ArgB
    , called
    "Execute?"
    , which will send the command or not based on parameters that you specify. See the TAZ Command Manual for details. (PDF)

Q: What about stress tests, unit tests, functional tests, regression?

A: Yes, TAZ can do it all. Unlike other testing applications that are designed for a specific type of testing, TAZ is designed to duplicate the actions of a manual tester. If your manual actions can accomplish a type of testing, then TAZ can do it. Plus, TAZ will augment manual commands with constructs like Loops, Conditionals, and SubCases that are still presented as commands.

For regression testing TAZ has many built-in features, like
Configs
that make regression very easy to handle and maintain.

Q: Can TAZ test any software application?

A: It depends. TAZ needs a way to communicate with the software. This could be done with a remote interface, an API, instruments, other scripts, etc. As long as TAZ can communicate, it can test.

Q: Can TAZ test web GUIs?

A: TAZ uses Selenium to control and test web GUIs. Anything you can do with Selenium, TAZ can do.

Q: How can I connect multiple pieces of equipment in the Equipment Table?

A: Multiple pieces of equipment can be selected with Shift-click to select a range of equipment and Ctrl-click to select equipment individually.

Q: Is there an easy way to enter a list of commands in a TestCase?

A: Yes. If you have a list of commands in a text document, one per line, you can use the Import button on the
WRITE TESTS
screen. TAZ will enter these in the current
TestCase
at the cursor location and direct the commands to the selected piece of connected equipment.

Q: How can I leave remarks in my TestCase?

A: Any text that is outside of TAZ commands is a remark. In the
TestCase
Editor these will be colored black. To remark out a command, begin the line with the "#" symbol.

Q: What’s the best way to search for failures in a log?

A: There are several ways to navigate through log files on the
VIEW RESULTS >> VIEW LOGS
screen. All the failures in a log will be listed at the beginning in the Pass/Fail summary. Double-click on any one of these lines and TAZ will take you to that step in the log.

You can also search for a particular string, navigate from failed step to failed step, or use the arrows to view each step sequentially.

Q: Does TAZ support regular expressions?

A: Yes. Many TAZ commands have a version that support regular expressions, for instance,
PassOutReg{...}
and
XpectReg{...}
are intended for regular expressions. A backslash (\) is used to unreserve a reserved character inside a regular expression when needed.

Q: What is the syntax for a Manual Test Step?

A: Manual
TestSteps
may not have any TAZ commands in them, and include three sections: Action, Expected and Image (optional). These sections are created for you when you click
Add Manual TestStep
on the
WRITE TESTS screen.

Manual
TestSteps
create a popup dialog when you run the
TestCase
, prompting you to complete the action, and providing means to evaluate as Pass or Fail. If the optional Image field points to an image file, that image will appear at runtime. This is useful, for example, in situations where the operator needs to look at the DUT and check the status of LEDs. Manual steps and automated steps may be combined in the same
TestCase.

Q: When I am writing a TestCase, what is the best way to capture the responses from my equipment?

A: To the left of the TestCase Editor on the
WRITE TESTS
screen is the Equipment Communication client. From here you can communicate with all your connected equipment and send commands and capture responses directly into a
TestCase
. See this video for more details. [Video]

Q: Can TAZ run tests on relational databases?

A: Yes, TAZ uses the
DB{...}
command to send SQL to many types of databases. TAZ uses an ODBC connection to make the initial database connection from the
Equipment Table
. Please see the command manual and this video for more information.

Q: I have a TestCase that fails. How can I debug it?

A: There are many debugging features in TAZ. On the
RUN TESTS>>STEP EXECUTION
screen:
  • Pause on Failure
  • Pause after specified steps
  • Skip specified steps
When paused, you can communicate directly with your equipment in real time from
RUN TESTS>>COMMUNICATE.

From
RUN TESTS>>SET CONDITIONS
you can:
  • Pause if specified text is returned
  • Send emails
  • Launch scripts written in other languages

Can Boolean Operators be used to evaluate responses?

A: Yes. Taz uses the following syntax for Boolean operators:
  • & = AND
  • ^ = OR
  • ~ = NOT
For example:
Xpect{abc^def}
will pass if either 'abc' or 'def' is found in the equipment response.
Xpect{…}
has many other ways to evaluate responses.

Does TAZ have a way to expect that a number to fall within a range in a response?

A: Ranges can be used in an
Xpect{...}
command by putting the range in square brackets. For example:
Xpect{Vlan[112-163]}
will pass with the string "Vlan" prefixing any number in that range. Individual numbers can also be added using commas, such as:
Xpect{Vlan[1,2,5,7,112-163]}

Q: What is the difference between a PassOut Table and an ETable?

A: A
PassOut Table
is one-dimensional, while
ETables
are two-dimensional, like an Excel spreadsheet.
ETables
contain not only rows and columns, but also pages, like worksheets in Excel. Another difference is that
ETables
can collect and use values between
TestCases
and even
TestRuns
, whereas
PassOuts
live only for the duration of a
TestCase
. Values can easily be passed back and forth between
PassOut Tables
and
ETables
.
PassOut Tables
have more features to capture and work with data, where
ETables
are designed to store data.

Q: If the authentication information in my device changes, how do I update it in TAZ?

A: Logins and passwords that are used to connect to a device are stored in the
Equipment Table
. The
Equipment Table
can be updated and saved to a file on the
CONNECT EQUIPMENT
screen.

Q: What’s the difference between the Equipment Table and an Equipment Table file?

A: The
Equipment Table
is a table within TAZ that holds connection information. TAZ uses the information from this table to connect and communicate with all equipment. The information may be entered directly in the
Equipment Table
before each run (very inconvenient) or a file may be loaded to populate the table. The file itself is not the
Equipment Table
; it is only a convenience to populate the
Equipment Table
. So for example, when a
Config
is saved it saves the contents of the
Equipment Table
and the file used to populate it is irrelevant.

Q: Can I setup notification with information about whether a test passed or failed?

A: Email notifications are can be set in
RUN TESTS >> SET CONDITIONS
. There are many options that allow you to administer exactly when and how you are notified about test results.

Q: How can I save all of my current testing settings for later use?

A: The
"Save Config"
button on the Setup Runs screen will save your settings from all screens in TAZ in a .cfg file that can be recalled for later use.

             

Home | Solutions | About | Support | Contact

Aztaz Software, LLC PO Box 2663 Petaluma, CA 94952

support@aztazsoftware.com | (707) 765-6823

Providing test engineers with automated testing software.
Copyright © Aztaz Software, LLC - All Rights Reserved

Privacy | Terms