You are on page 1of 7

Easy SNMP

Testing Document




Technical adviser:
Danny Zadok, Danny.Zadok@motorola.com

Technical adviser:
Dr. Yuval Elovici, Danny.Zadok@motorola.com

Project team:
Dima Yagudaev, dimay1982@gmail.com
Tomer Heber, heber.tomer@gmail.com
Mauro Rois, roismauro@gmail.com
Morad Ankri, ankrim@gmail.com

Project site URL: http://www.cs.bgu.ac.il/~yagudaev


EasySNMP
2


Table of Contents
1. Testing functional requirements ................................................................................. 3
1.1 SiteBuilder .......................................................................................................... 3
1.2 Deployment Manager ........................................................................................... 3
1.3 Dynamic SNMP Agent ........................................................................................... 3
2. Testing non-functional requirements ........................................................................... 5
2.1 SiteBuilder .......................................................................................................... 5
2.2 Deployment Manager ........................................................................................... 5
2.3 Dynamic SNMP Agent ........................................................................................... 5
3. Test-Driven Development .......................................................................................... 6
4. Random & automatically-generated tests .................................................................... 6
5. Testing the user interface ........................................................................................... 7
6. Testing build, integration & deployment ...................................................................... 7
6.1 SiteBuilder .......................................................................................................... 7
6.2 Deployment Manager ........................................................................................... 7
6.3 Dynamic SNMP Agent ........................................................................................... 7






















EasySNMP
3


1. Testing functional requirements
1.1 SiteBuilder
The SiteBuilder is mainly a GUI application that does not contain business logic therefore the
acceptance tests will be done manually.
Test Purpose Test Process Expected Result
Check whether
Loading/Saving
networks is working
properly
Construct a network with various
elements.
Save the network & later open it.
The exact same network
should be loaded when
opening the saved
network.
Checking
Adding/Removing
IOModule to/from the
iomodules.xml file
Add an IOModule type to the
iomodules.xml file.
Restart the SiteBuilder.
The removed IOModule is
appearing in the toolbox.
Remove an IOModule type from the
iomodules.xml file.
Restart the SiteBuilder.
The removed IOModule is
not appearing in the
toolbox.

1.2 Deployment Manager
The Deployment manager is a GUI application that is part of the SiteBuilder. The acceptance
tests for this module will also be done manually as part of the SiteBuilder tests.
Test Purpose Test Process Expected Result
Check whether sites
are validated correctly
Construct a network with a site.
Place two IOModule controls onto
with the same rack and module
numbers.
Select Verify from the deployment
menu.
Select the site from the sites list.
A verification error should
appear.
Check whether sites
are validated correctly
Construct a network with a site.
Place two IOModule controls onto
with different rack and module
numbers.
Select Verify from the deployment
menu.
Select the site from the sites list.
The verification succeeds.
Check whether
configuration files are
build correctly for the
sites
Construct a network with a site.
Place several IOModule, Table and
PortsGroup controls onto the site.
Select Build from the deployment
menu.
Select the site from the sites list.
The configuration file created
successfully.
Check whether
configuration files are
uploaded correctly for
the sites
Construct a network with a site.
Place several IOModule, Table and
PortsGroup controls onto the site.
Select Deploy from the
The file is uploaded successfully
to the site.
EasySNMP
4


deployment menu.
Select the site from the sites list.

1.3 SNMP Agent
For the agent's functional testing we will use a predefined configuration file and upload it to
the MOSCAD.
For testing most of the functional requirements we will use a SNMP manager that will be
provided by Motorola. These tests will be done manually.
We will also perform an SNMP "walk" command on our MIB tree using several other SNMP
managers.
For testing boundary tests, error handling, trap checking, handling mechanism and
correctness we will build another application that will be run on a PC and communicate with
the MOSCAD, it will change the values of a preconfigured monitored objects (like digital I/O
port) and while doing so it will trigger a traps, this trap will be received by the application on
the PC and it will send the MOSCAD commands and check the correctness of the responses.
It will also send SNMP commands for boundary tests, error handling tests, etc.

Test Purpose Test Process Input Data Expected Result
Check that the agent
initialized correctly
using SNMP get-next
command.
Upload a pre-
defined
configuration file
to the MOSCAD
and perform an
SNMP walk
operation on the
agent to check the
correctness.
Configuration file.
SNMP get-next
commands.
The agent respond to
the get-next
commands with the
correct MIB tree
structure and the
values defined in the
configuration file.
Check that the agent
initialized correctly
using SNMP get
command.
Upload a pre-
defined
configuration file
to the MOSCAD
and perform an
SNMP walk
operation on the
agent to check the
correctness.
Configuration file.
SNMP get
commands.
The agent respond to
the get commands
with the correct MIB
tree structure and the
values defined in the
configuration file.
Check agent's
response to the SNMP
set command on all
nodes in the MIB tree.
Upload a pre-
defined
configuration file
to the MOSCAD
and perform
SNMP set
commands on all
the nodes in the
MIB tree.
Configuration file.
SNMP set
commands.
The agent responds
to the set commands
correctly.
For nodes with write
permissions it
responds with the
new value and for
read-only permissions
it responds with the
corresponding error
code.
Boundary test. Upload a pre- Configuration file. The agent responds
EasySNMP
5


defined
configuration file
to the MOSCAD
and perform
SNMP set
commands
involving all the
supported types.
For each type test
agent response to
values out of the
boundary of the
type.
SNMP set
commands.
to the set commands
correctly, with the
corresponding error
code.
Test community string
enforcement
Upload a pre-
defined
configuration file
to the MOSCAD
and perform
SNMP set and get
commands with
the wrong
community string.
Configuration file.
SNMP set and get
commands.
The agent responds
correctly to the set
and get commands,
with the
corresponding error
code.

2. Testing non-functional requirements
2.1 SiteBuilder
The SiteBuilder is mainly a GUI application that does not contain business logic therefore the
acceptance tests will be done manually.
Test Purpose Test Process Input Data Expected Result


2.2 Deployment Manager
The Deployment manager is a GUI application that is part of the SiteBuilder. The acceptance
tests for this module will also be done manually as part of the SiteBuilder tests.
Test Purpose Test Process Input Data Expected Result


2.3 SNMP Agent
For testing the nonfunctional requirements we will extend the previously described test tool
application to monitor the system response time and make a stress test.
The application will send many messages and measure the performance of the system.
EasySNMP
6



Test Purpose Test Process Input Data Expected Result
Stress test. Upload a pre-
defined
configuration file
to the MOSCAD
and perform many
sequential SNMP
walk operation on
the agent to check
the correctness.
Configuration file.
SNMP set
commands.
The agent respond to
the get-next
commands with the
correct MIB tree
structure and the
values defined in the
configuration file.
Stress test. Upload pre-
defined large scale
configuration file
to the MOSCAD
and perform an
SNMP walk
operation on the
agent to check the
correctness.
Large scale
configuration file.
SNMP get-next
commands.
The agent respond to
the get-next
commands with the
correct MIB tree
structure and the
values defined in the
configuration file.
Performance test Upload a pre-
defined
configuration file
to the MOSCAD
and perform many
sequential SNMP
commands and
measure the
performance.
Configuration file.
SNMP commands.
The agent responds
to the commands
correctly and within
acceptable time.

3. Test-Driven Development
We wrote unit test for all of the components in the agent, It was really helpful when doing
the integration between the different components. The integration caused many changes in
the components.
4. Random & automatically-generated tests
We will extend the previously described test tool application to send SNMP requests with
randomly errors.
Test Purpose Test Process Input Data Expected Result
Error handling testing Upload a pre-
defined
configuration file
with random
errors to the
Configuration file
containing random
errors.
SNMP get-next
commands.
The agent detects the
errors and initialized
with the default
settings.
This is verified using
EasySNMP
7


MOSCAD and
perform an SNMP
walk operation on
the agent to check
the correctness.

the SNMP walk
operation.
Error handling testing Upload a pre-
defined
configuration file
to the MOSCAD
and perform
SNMP commands
with random
errors.
Configuration file.
SNMP commands
with random errors.
The agent responds
to the set commands
correctly, with the
corresponding error
code or ignores the
message.

5. Testing the user interface
The GUI (SiteBuilder) was tested mainly manually. Among the tests:
The hierarchy of the components (e.g. the network control can contain controls of type
Area and Site only, etc.).
Fields validation, various input fields are being checked for range (and other) validity.
Dragging components are done in the correct manner
6. Testing build, integration & deployment
6.1 SiteBuilder
We will compile it under windows XP. The integration will by building different configuration
files saving them for reuse and downloading it manually to the MOSCAD (can't be done
automatically).
6.2 Deployment Manager
This component is part of the site builder and will be tested together with the site builder
(see section 6.1). We have only one MOSCAD, so it is up to Motorola to further test on
larger scale sites.
6.3 Dynamic SNMP Agent
The development of the SNMP agent is done in Visual Studio under Windows XP using stubs
to simulate the MOSCAD API and macro definitions so it will work under Windows as well on
the MOSCAD. After compiling it under Windows and testing it, we compile it using the
designated compiler for the MOSCAD and test it again.

You might also like