XMPP Server functional tests.

  1. Get server version
  2. Server configuration
  3. Server statistics
  4. Script with functional tests for all basic XMPP/Jabber features
  5. Script for MUC component tests
  6. Script for PubSub component tests
  7. Administration commands tests
  8. Tests for Virtual Hosts implementation in the server
  9. Testing bosh component
  10. Testing bosh component in keep-alive mode
  11. Multi-threaded tests for various XMPP functions

Test start time: Mar 8, 2010 2:47:48 PM

Server version info:

Name:  Tigase
Version:  5.0.0-b2103
OS:  Mac OS X-x86_64-10.6.2, Java HotSpot(TM) 64-Bit Server VM-14.3-b01-101-Apple Inc.
    
Local IP:  127.0.0.1
Remote IP:  127.0.0.1

Server basic configuration parameters:

sess-man:plugins-conf/roster-presence/dynamic-roster-classes tigase.xmpp.impl.DynamicRosterTest
sess-man:component-id sess-man@devel.tigase.org
sess-man:def-hostname devel.tigase.org
sess-man:admins {"admin@test-d"}
sess-man:scripts-dir scripts/admin
sess-man:max-queue-size 23300
sess-man:incoming-filters tigase.server.filters.PacketCounter
sess-man:outgoing-filters tigase.server.filters.PacketCounter
sess-man:admin-scripts-dir scripts/admin/
sess-man:user-repo-class derby
sess-man:user-repo-url jdbc:derby:tigasetest
sess-man:auth-repo-class tigase.db.jdbc.JDBCRepository
sess-man:auth-repo-url jdbc:derby:tigasetest
sess-man:plugins {"jabber:iq:register", "jabber:iq:auth", "urn:ietf:params:xml:ns:xmpp-sasl", "urn:ietf:params:xml:ns:xmpp-bind", "urn:ietf:params:xml:ns:xmpp-session", "roster-presence", "jabber:iq:privacy", "jabber:iq:version", "http://jabber.org/protocol/stats", "starttls", "vcard-temp", "http://jabber.org/protocol/commands", "jabber:iq:private", "urn:xmpp:ping", "domain-filter", "disco"}
sess-man:plugins-concurrency 
sess-man:skip-privacy false
sess-man:trusted {"admin@test.test-d"}

Tests results:

Test name Result Total time OK Average Description History
Version success 0 sec 1 48 ms Get server version Version
Configuration success 0 sec 1 155 ms Server configuration Configuration
Statistics success 0 sec 1 107 ms Server statistics Statistics
Test 1 success 0 sec 1 1 ms Plain socket connect. Test 1
Test 2 success 0 sec 1 11 ms Stream open to server. Test 2
Test 3 success 1 sec 1 1285 ms SSL socket connect. Test 3
Test 4 success 0 sec 1 107 ms XEP-0077 - In-Band Registration, register Test 4
Test 5 success 0 sec 1 57 ms XEP-0078 Non-SASL authorization with plain password. Test 5
Test 6 success 0 sec 1 27 ms XEP-0078 Non-SASL authorization with digest password. Test 6
Test 7 success 0 sec 1 33 ms TLS connection open Test 7
Test 8 success 0 sec 1 68 ms SASL authorization Test 8
Test 9 success 0 sec 1 75 ms XMPP resource bind Test 9
Test 10 success 0 sec 1 174 ms Establish XMPP session Test 10
Test IO success 3 sec 10 343 ms Checking Tigase IO subsystem Test IO
Test 11 success 0 sec 1 24 ms Send a message to self user and don't wait for response Test 11
Test 12 success 0 sec 1 19 ms Send a message to all-xmpp-test_1 user Test 12
Test 13 success 0 sec 1 17 ms XEP-0092 - get entity version Test 13
Test 14 success 0 sec 1 65 ms XEP-0039 Statistics Gathering Test 14
Test 15 success 0 sec 1 223 ms Roster management test Test 15
Test 16 success 0 sec 1 236 ms Privacy lists management test Test 16
Test 17 success 0 sec 1 18 ms Privacy lists - send a message to blocking-test-user_1 user Test 17
Test 18 success 0 sec 1 25 ms Send a message to long-list-user_1 user Test 18
Test 19 success 0 sec 1 157 ms XEP-0049: Private XML Storage Test 19
Test 20 success 0 sec 1 79 ms Test for feature-not-implemented error which should be returned when client sends unsupported stanza Test 20
Test 21 success 0 sec 1 342 ms XEP-0054: vcard-temp Test 21
Test 22 success 0 sec 1 24 ms XEP-0199: XMPP Ping to domain 'test-d' the user is logged in Test 22
Test 23 success 0 sec 1 45 ms XEP-0199: XMPP Ping to another, vrtual domain 'test-domain' on the server Test 23
Test 24 success 0 sec 1 64 ms XEP-0030: XMPP Service Discovery Test 24
Test 25 success 1 sec 2 624 ms Presence subscription test between 'admin' and 'all-xmpp-test'. Test 25
Test 26 success 1 sec 2 368 ms Presence cancel test between 'admin' and 'all-xmpp-test'. Test 26
Test 27 success 1 sec 2 361 ms Presence unsubscribe test between 'admin' and 'all-xmpp-test'. Test 27
Test 28 success 1 sec 2 409 ms Presence subscription between 'admin' and 'all-xmpp-test' again to prepare for the next test. Test 28
Test 29 success 1 sec 2 309 ms Remove subscribed contact 'all-xmpp-test' from the roster of the user 'admin', all subscriptions should be cancelled automatically by the server. Test 29
Test 30 success 0 sec 2 139 ms 2 user connections, each using a different resource. Test 30
Test 31 success 1 sec 2 317 ms Presence subscription deny test between 'admin' and 'all-xmpp-test'. Test 31
Test 32 success 0 sec 1 224 ms Send a message without resource binding and expect an error response. Test 32
Test 33 success 0 sec 1 151 ms USER_STATUS command test to ensure interoperability with Yate Test 33
Test 34 success 0 sec 1 64 ms USER_STATUS command test to ensure security, should receive forbidden error. Test 34
Test 35 success 0 sec 1 20 ms Check whether the tester user account responds Test 35
Test 36 success 0 sec 1 26 ms Send a command to tester_1 user to generate 10 messages on the server. Test 36
Test 37 success 0 sec 1 34 ms Send a command to tester_1 user to generate 100 messages on the server. Test 37
Test 38 success 0 sec 1 243 ms Send a command to tester_1 user to generate 1000 messages on the server. Test 38
Test 39 success 1 sec 1 1248 ms Send a command to tester_1 user to generate 10000 messages on the server. Test 39
Test 40 success 6 sec 1 6169 ms Send a command to tester_1 user to generate 100000 messages on the server. Test 40
Test 41 success 0 sec 1 26 ms Dynamic roster storage test Test 41
Test 42 success 0 sec 1 98 ms Dynamic roster merge test Test 42
MUC 1 success 0 sec 1 100 ms Send room create presence request to MUC component. MUC 1
PubSub 1 success 0 sec 1 23 ms Get version from the pubsub component. PubSub 1
PubSub 2 success 0 sec 1 158 ms Create a new node in the pubsub component. PubSub 2
PubSub 3 success 0 sec 1 29 ms Add subscriptions to the node in the pubsub component. PubSub 3
PubSub 4 success 0 sec 1 28 ms Add affiliations to the node in the pubsub component. PubSub 4
PubSub 5 success 0 sec 1 158 ms Create a collection node in the pubsub component. PubSub 5
RosterMan 1 success 0 sec 1 173 ms Register user mgmt Ad-Hoc script RosterMan 1
RosterMan 5 success 0 sec 1 13 ms Ad-Hoc user mgmt - Check removed user RosterMan 5
RosterMan 6 success 0 sec 1 52 ms Ad-Hoc user mgmt - Non existing user check RosterMan 6
VHost 1 success 0 sec 1 24 ms XEP-0199: XMPP Ping to virtual domain 'test-domain' on the server VHost 1
VHost 2 success 0 sec 1 16 ms Reloading VHosts from non-admin account, expecting error message VHost 2
VHost 3 success 0 sec 1 18 ms Updating VHost from non-admin account, expecting error message VHost 3
VHost 4 success 0 sec 1 100 ms Removing VHost from non-admin account, expecting error message VHost 4
VHost 5 success 0 sec 1 68 ms Reloading VHosts from admin account... VHost 5
VHost 6 success 0 sec 1 47 ms XEP-0199: XMPP Ping to virtual domain 'vhost-1' which is not on the server, expecting error response VHost 6
VHost 7 success 0 sec 1 129 ms Adding VHost 'vhost-1' from admin account VHost 7
VHost 8 success 0 sec 1 147 ms XEP-0199: XMPP Ping to virtual domain 'vhost-1' on the server VHost 8
VHost 9 success 0 sec 1 228 ms Removing VHost 'vhost-1' from admin account VHost 9
VHost 10 success 0 sec 1 27 ms XEP-0199: XMPP Ping to virtual domain 'vhost-1' which is not on the server, expecting error response VHost 10
VHost 11 success 0 sec 200 2 ms XEP-0199: XMPP Ping 200 non-existen vhosts on the server, expecting error responses VHost 11
VHost 12 success 3 sec 200 17 ms Adding 200 virtual hosts from admin account VHost 12
VHost 13 success 0 sec 200 1 ms XEP-0199: XMPP Ping all 200 virtual hosts on the server VHost 13
VHost 14 success 0 sec 1 22 ms Reloading all VHosts from admin account... VHost 14
VHost 15 success 2 sec 200 12 ms Removing 200 VHosts from admin account VHost 15
VHost 16 success 0 sec 200 1 ms XEP-0199: XMPP Ping 200 non-existen vhosts on the server, expecting error responses VHost 16
VHost 17 success 0 sec 1 23 ms Reloading all VHosts from admin account... VHost 17
Vhost end success 0 sec 1 81 ms XEP-0077 - In-Band Registration - user unregister Vhost end
Bosh 1 success 0 sec 1 2 ms Socket connect. Bosh 1
Bosh 2 success 0 sec 1 11 ms Stream open to server. Bosh 2
Bosh 3 success 0 sec 1 63 ms XEP-0077 - In-Band Registration, register Bosh 3
Bosh 4 success 0 sec 1 53 ms XEP-0078 Non-SASL authorization with plain password. Bosh 4
Bosh 5 success 0 sec 1 21 ms SASL authorization Bosh 5
Bosh 6 success 0 sec 1 38 ms XMPP resource bind Bosh 6
Bosh 7 success 0 sec 1 17 ms Establish XMPP session Bosh 7
Bosh 8 success 0 sec 1 29 ms Send a message to self user and don't wait for response Bosh 8
Bosh 9 success 0 sec 1 30 ms Send a message to all-xmpp-test_1 user Bosh 9
Bosh 10 success 0 sec 1 13 ms XEP-0092 - get entity version Bosh 10
Bosh 11 success 0 sec 1 42 ms XEP-0039 Statistics Gathering Bosh 11
Bosh 12 success 0 sec 1 123 ms Roster management test Bosh 12
Bosh 13 success 0 sec 1 193 ms Privacy lists management test Bosh 13
Bosh 14 success 0 sec 1 47 ms Privacy lists - send a message to blocking-test-user_1 user Bosh 14
Bosh 15 success 0 sec 1 124 ms XEP-0049: Private XML Storage Bosh 15
Bosh 16 success 0 sec 1 16 ms Test for feature-not-implemented error which should be returned when client sends unsupported stanza Bosh 16
Bosh 17 success 0 sec 1 79 ms XEP-0054: vcard-temp Bosh 17
Bosh 18 success 0 sec 1 25 ms XEP-0199: XMPP Ping to domain 'test-d' the user is logged in Bosh 18
Bosh 19 success 0 sec 1 38 ms XEP-0199: XMPP Ping to another, vrtual domain 'test-domain' on the server Bosh 19
Bosh 20 success 0 sec 1 25 ms XEP-0030: XMPP Service Discovery Bosh 20
Bosh 21 success 0 sec 2 244 ms Presence subscription test between 'admin' and 'all-xmpp-test'. Bosh 21
Bosh 22 success 0 sec 2 198 ms Presence cancel test between 'admin' and 'all-xmpp-test'. Bosh 22
Bosh 23 success 0 sec 2 173 ms Presence unsubscribe test between 'admin' and 'all-xmpp-test'. Bosh 23
Bosh 24 success 1 sec 2 312 ms Presence subscription deny test between 'admin' and 'all-xmpp-test'. Bosh 24
Bosh 25 success 0 sec 1 19 ms Send a message without resource binding and expect an error response. Bosh 25
Bosh end success 0 sec 1 26 ms XEP-0077 - In-Band Registration - user unregister Bosh end
Bosh keep-alive 1 success 0 sec 1 1 ms Socket connect. Bosh keep-alive 1
Bosh keep-alive 2 success 0 sec 1 3 ms Stream open to server. Bosh keep-alive 2
Bosh keep-alive3 success 0 sec 1 21 ms XEP-0077 - In-Band Registration, register Bosh keep-alive3
Bosh keep-alive 4 success 0 sec 1 19 ms XEP-0078 Non-SASL authorization with plain password. Bosh keep-alive 4
Bosh keep-alive 5 success 0 sec 1 13 ms SASL authorization Bosh keep-alive 5
Bosh keep-alive 6 success 0 sec 1 14 ms XMPP resource bind Bosh keep-alive 6
Bosh keep-alive 7 success 0 sec 1 23 ms Establish XMPP session Bosh keep-alive 7
Bosh keep-alive 8 success 0 sec 1 10 ms Send a message to self user and don't wait for response Bosh keep-alive 8
Bosh keep-alive 9 success 0 sec 1 12 ms Send a message to all-xmpp-test_1 user Bosh keep-alive 9
Bosh keep-alive 10 success 0 sec 1 4 ms XEP-0092 - get entity version Bosh keep-alive 10
Bosh keep-alive 11 success 0 sec 1 38 ms XEP-0039 Statistics Gathering Bosh keep-alive 11
Bosh keep-alive 12 success 0 sec 1 55 ms Roster management test Bosh keep-alive 12
Bosh keep-alive 13 success 0 sec 1 99 ms Privacy lists management test Bosh keep-alive 13
Bosh keep-alive 14 success 0 sec 1 14 ms Privacy lists - send a message to blocking-test-user_1 user Bosh keep-alive 14
Bosh keep-alive 15 success 0 sec 1 63 ms XEP-0049: Private XML Storage Bosh keep-alive 15
Bosh keep-alive 16 success 0 sec 1 88 ms Test for feature-not-implemented error which should be returned when client sends unsupported stanza Bosh keep-alive 16
Bosh keep-alive 17 success 0 sec 1 81 ms XEP-0054: vcard-temp Bosh keep-alive 17
Bosh keep-alive 18 success 0 sec 1 13 ms XEP-0199: XMPP Ping to domain 'test-d' the user is logged in Bosh keep-alive 18
Bosh keep-alive 19 success 0 sec 1 11 ms XEP-0199: XMPP Ping to another, vrtual domain 'test-domain' on the server Bosh keep-alive 19
Bosh keep-alive 20 success 0 sec 1 38 ms XEP-0030: XMPP Service Discovery Bosh keep-alive 20
Bosh keep-alive 21 success 0 sec 2 234 ms Presence subscription test between 'admin' and 'all-xmpp-test'. Bosh keep-alive 21
Bosh keep-alive 22 success 0 sec 2 147 ms Presence cancel test between 'admin' and 'all-xmpp-test'. Bosh keep-alive 22
Bosh keep-alive 23 success 0 sec 2 159 ms Presence unsubscribe test between 'admin' and 'all-xmpp-test'. Bosh keep-alive 23
Bosh keep-alive 24 success 0 sec 2 173 ms Presence subscription deny test between 'admin' and 'all-xmpp-test'. Bosh keep-alive 24
Bosh keep-alive 25 success 0 sec 1 11 ms Send a message without resource binding and expect an error response. Bosh keep-alive 25
Bosh keep-alive end success 0 sec 1 46 ms XEP-0077 - In-Band Registration - user unregister Bosh keep-alive end
Multi 1 success 2 sec 25 107 ms Multi-thread test of XEP-0077 - In-Band Registration, user register Multi 1
Multi 2 success 0 sec 25 10 ms Multi-thread test of server Version info Multi 2
Multi 3 success 4 sec 25 185 ms Multi-thread test of server Statistics info Multi 3
Multi 4 success 7 sec 25 292 ms Multi-thread test Roster management functions Multi 4
Multi 5 success 1 sec 25 65 ms Multi-thread test of message send to daemon user Multi 5
Multi 6 success 11 sec 25 449 ms Multi-thread test privacy lists management Multi 6
Multi 7 success 1 sec 25 62 ms Multi-thread test privacy lists - send a message to daemon user who blocks all messages Multi 7
Multi 8 success 0 sec 25 39 ms Multi-thread test privacy lists - send a message to daemon user with very long privacy list Multi 8

Test end time: Mar 8, 2010 2:49:06 PM

Total test time: 0 hours, 1 minutes, 17 seconds, 938 ms.

Server stats after test:

message-router:Last second packets 557
message-router:Last minute packets 236156
message-router:Packets received 237136
message-router:Packets sent 849
message-router:IN_QUEUE messages 226661
message-router:IN_QUEUE presences 136
message-router:Local hostname devel.tigase.org
message-router:Uptime 2 min, 5 sec
message-router:Load average 2.3472
message-router:CPU usage 81.5%
message-router:Max Heap mem 910,272 KB
message-router:Used Heap 335,345 KB
message-router:Free Heap 574,926 KB
message-router:Max NonHeap mem 135,168 KB
message-router:Used NonHeap 43,196 KB
message-router:Free NonHeap 91,971 KB
vhost-man:Number of VHosts 2
vhost-man:Checks: is local domain 682088
vhost-man:Get components for local domain 113566
vhost-man:Get components for non-local domain 402
bosh:Last second packets 2
bosh:Last minute packets 722
bosh:Packets received 746
bosh:Packets sent 626
bosh:IN_QUEUE messages 8
bosh:IN_QUEUE presences 18
bosh:OUT_QUEUE messages 8
bosh:OUT_QUEUE presences 24
c2s:Last second packets 328
c2s:Last minute packets 3790
c2s:Packets received 4937
c2s:Packets sent 4701
c2s:IN_QUEUE messages 1139
c2s:IN_QUEUE presences 18
c2s:OUT_QUEUE messages 1138
c2s:OUT_QUEUE presences 21
c2s:Open connections 4
ext:Number of external domains 1
muc:Last minute packets 2
muc:Packets received 2
muc:Packets sent 2
muc:IN_QUEUE presences 2
muc:OUT_QUEUE presences 2
pubsub:Last minute packets 8
pubsub:Packets received 8
pubsub:Packets sent 9
pubsub:Average processing time on last 100 runs [ms] 2
pubsub:OUT_QUEUE messages 1
pubsub:Cached nodes 3
pubsub:Update subscriptions calls 4
pubsub:Subscriptions count (in cache) 4
pubsub:Affiliations count (in cache) 4
pubsub:Repository writes 3
pubsub:Added new nodes 3
pubsub:Total writing time 461ms
pubsub:Average DB write time [ms] 76
sess-man:Last second packets 299
sess-man:Last minute packets 117458
sess-man:Packets received 118489
sess-man:Packets sent 118852
sess-man:IN_QUEUE messages 113394
sess-man:IN_QUEUE presences 98
sess-man:OUT_QUEUE messages 113397
sess-man:OUT_QUEUE presences 89
sess-man:Open user connections 10
sess-man:Maximum user connections 19
sess-man:Total user connections 346
sess-man:Closed user connections 291
sess-man:Open user sessions 6
sess-man:Maximum user sessions 12
sess-man:Total user sessions 227
srecv:Last minute packets 74604
srecv:Packets received 74604
srecv:Packets sent 112118
srecv:IN Queue overflow 37514
srecv:IN_QUEUE messages 74604
srecv:OUT_QUEUE messages 112118
unknown:Stats level FINER