|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
Need help for component level negative testing |
« View previous topic :: View next topic » |
Author |
Message
|
geeta2058 |
Posted: Fri Oct 10, 2008 1:42 am Post subject: Need help for component level negative testing |
|
|
Newbie
Joined: 03 Oct 2008 Posts: 1
|
Hi all..
Im very new to MQ-Series and have to test a middleware based project.
(MQ series - AIX Environment )
For component level (negative) testing i have created some scenarios.I want your help to make this scenarios possible.
Also some comments/suggestions from your side for breaking the system are really appreciable.
Following are the scenarios :-
1) How to make destination queue full so that it cannot deliver a message.
2) Validate how Queue manager handles a situation when the destination queue does not exist and it cannot deliver a message (How to make this situation possible through command line?)
3) Validate how Queue manager handles a situation when the sender is not authorized to use the destination queue and it cannot deliver a message (How to make this situation possible through command line?)
4)Validate how Queue manager handles a situation when the message is too long and it cannot deliver a message (How to make this situation possible through command line?)
5)Validate how Queue manager handles a situation when the message contains a duplicate message sequence number and it cannot deliver a message
6)Validate how Queue manager handles a situation when Message puts have been inhibited on the destination queue and it cannot deliver a message
7)Validate the behavior when you stop application from accessing the queue
8)Validate that programm discards the message after getting it from the queue.
9)validate how queue manager handles a situation when all messages are set as persistent
Your help/suggestions are really appreciable..
Waiting for your earliest resonse..
With regards !! |
|
Back to top |
|
 |
bower5932 |
Posted: Fri Oct 10, 2008 4:32 am Post subject: |
|
|
 Jedi Knight
Joined: 27 Aug 2001 Posts: 3023 Location: Dallas, TX, USA
|
Take a look at some of the basic definitions on the queue and you can easily achieve most of these requirements.
Some examples:
Quote: |
How to make destination queue full so that it cannot deliver a message. |
You can set the maximum number of messages for the queue to be very low and then put a few messages to fill the queue.
Quote: |
Validate how Queue manager handles a situation when the destination queue does not exist and it cannot deliver a message (How to make this situation possible through command line?) |
You can do this for a remote queue by not creating it. If you are attempting to do this locally, you'll get back the 2085 error at put time.
Quote: |
validate how queue manager handles a situation when all messages are set as persistent |
This will be done by your application marking the messages as persistent at put time.
Hope this helps. |
|
Back to top |
|
 |
rocky |
Posted: Thu Oct 23, 2008 9:30 pm Post subject: |
|
|
Novice
Joined: 01 Jun 2008 Posts: 20
|
Ya you can define a dead letter queue at the remote end by usual definition of a local queue for example: define ql(xx) name of the local queue and then at the runmqsc prompt of the remote QManager alter qmgr DEADQ(xx) and then the queue where you are trying to put the message change the maxdepth parameter of the queue for example alter queue(yy) maxdepth(zz) where the yy is the queue name at the remote end and zz is the number of maximum messages the queue can hold |
|
Back to top |
|
 |
rocky |
Posted: Thu Oct 23, 2008 10:15 pm Post subject: |
|
|
Novice
Joined: 01 Jun 2008 Posts: 20
|
apologies to continue in another reply, then you need to check the queue depth of the dead letter queue if the count increases then it suggests the queries which has been raised by you on what happens when the queue does not exist on remote side
Answer to your queries with detailed command line validations(As you are a newbie to MQ I have done this,hope it helps)
1) How to make destination queue full so that it cannot deliver a message.
C:>runmqsc QM1
5724-H72 (C) Copyright IBM Corp. 1994, 2004. ALL RIGHTS RESERVED.
Starting MQSC for queue manager QM1.
alter ql(TEST1) maxdepth(1)
alter ql(TEST1) maxdepth(1)
end
2 : end
One MQSC command read.
No commands have a syntax error.
All valid MQSC commands were processed.
if the application tries to put the message to the queue which is full it gets an error 2053
For example:
C:>amqsput TEST1 QM1
Sample AMQSPUT0 start
target queue is TEST1
adasd
MQPUT ended with reason code 2053
Sample AMQSPUT0 end
C:>mqrc 2053
2053 0x00000805 MQRC_Q_FULL
3) Validate how Queue manager handles a situation when the sender is not authorized to use the destination queue and it cannot deliver a message (How to make this situation possible through command line?)
You can do that by OAM commands i.e setmqaut command where you can give specific access\operation for the particular queue for the application user.
4) Validate how Queue manager handles a situation when the message is too long and it cannot deliver a message (How to make this situation possible through command line?)
C:>runmqsc QM1
5724-H72 (C) Copyright IBM Corp. 1994, 2004. ALL RIGHTS RESERVED.
Starting MQSC for queue manager QM1.
alter ql(TEST1) maxmsgl(2)
2 alter ql(TEST1) maxmsgl(2)
AMQ8008: WebSphere MQ queue changed.
end
2:end
One MQSC command read.
No commands have a syntax error.
All valid MQSC commands were processed.
C:>amqsput TEST1 QM1
Sample AMQSPUT0 start
target queue is TEST1
asdd
MQPUT ended with reason code 2030
Sample AMQSPUT0 end
C:>mqrc 2030
2030 0x000007ee MQRC_MSG_TOO_BIG_FOR_Q
6)Validate how Queue manager handles a situation when the message is too long and it cannot deliver a message (How to make this situation possible through command line?)
C:>runmqsc QM1
5724-H72 (C) Copyright IBM Corp. 1994, 2004. ALL RIGHTS RESERVED.
Starting MQSC for queue manager QM1.
alter ql(TEST1) maxdepth(1) put(disabled)
1 : alter ql(TEST1) maxdepth(1) put(disabled)
AMQ8008: WebSphere MQ queue changed.
end
2 : end
One MQSC command read.
No commands have a syntax error.
All valid MQSC commands were processed.
if the application tries to put the message into the queue which is put disabled it gets an error 2051
C:>amqsput TEST1 QM1
Sample AMQSPUT0 start
target queue is TEST1
asad
MQPUT ended with reason code 2051
Sample AMQSPUT0 end
C:>mqrc 2051
2051 0x00000803 MQRC_PUT_INHIBITED
 |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|