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. Testing bosh component
  6. Testing bosh component in keep-alive mode
  7. Multi-threaded tests for various XMPP functions
  8. Script with functional tests for Administrator ad-hoc commands

Test start time: May 19, 2014 12:43:24 PM

Server version info:

Name:  Tigase
Version:  5.3.0-SNAPSHOT-b3554/fb4518b3 (2014-05-19/12:37:18)
OS:  Linux-amd64-3.5.0-23-generic, OpenJDK 64-Bit Server VM-24.45-b08-Oracle Corporation
    
Local IP:  127.0.0.1
Remote IP:  127.0.0.1

Server basic configuration parameters:

sess-man:sess-man/command/http://jabber.org/protocol/admin#get-online-users-list LOCAL
sess-man:sess-man/command/http://jabber.org/protocol/admin#delete-user LOCAL
sess-man:sess-man/command/http://jabber.org/protocol/admin#get-top-active-users LOCAL
sess-man:sess-man/command/http://jabber.org/protocol/admin#get-registered-users-list LOCAL
sess-man:sess-man/plugins-conf/amp/msg-offline false
sess-man:sess-man/command/http://jabber.org/protocol/admin#get-idle-users LOCAL
sess-man:sess-man/command/http://jabber.org/protocol/admin#user-stats LOCAL
sess-man:sess-man/command/http://jabber.org/protocol/admin#add-user-tracker LOCAL
sess-man:sess-man/command/http://jabber.org/protocol/admin#get-active-users-num LOCAL
sess-man:sess-man/command/http://jabber.org/protocol/admin#announce LOCAL
sess-man:sess-man/command/roster-fixer-cluster LOCAL
sess-man:sess-man/command/user-roster-management LOCAL
sess-man:sess-man/command/http://jabber.org/protocol/admin#get-active-users LOCAL
sess-man:sess-man/command/connection-time LOCAL
sess-man:sess-man/command/http://jabber.org/protocol/admin#remove-user-tracker LOCAL
sess-man:sess-man/command/user-domain-perm LOCAL
sess-man:sess-man/command/user-roster-management-ext LOCAL
sess-man:sess-man/command/http://jabber.org/protocol/admin#change-user-password LOCAL
sess-man:sess-man/command/http://jabber.org/protocol/admin#get-user-roster LOCAL
sess-man:sess-man/command/http://jabber.org/protocol/admin#get-idle-users-num LOCAL
sess-man:sess-man/command/roster-fixer LOCAL
sess-man:sess-man/plugins-conf/dynamic-roster-classes tigase.xmpp.impl.roster.DynamicRosterTest
sess-man:sess-man/command/http://jabber.org/protocol/admin#add-user LOCAL
sess-man:sess-man/component-id sess-man@build.xmpp-test.net
sess-man:sess-man/def-hostname build.xmpp-test.net
sess-man:sess-man/admins admin@test-d
sess-man:sess-man/scripts-dir scripts/admin
sess-man:sess-man/command/ALL ADMIN
sess-man:sess-man/max-queue-size 100000
sess-man:sess-man/scheduler-threads 1
sess-man:sess-man/incoming-filters tigase.server.filters.PacketCounter
sess-man:sess-man/outgoing-filters tigase.server.filters.PacketCounter
sess-man:sess-man/admin-scripts-dir scripts/admin/
sess-man:sess-man/plugins session-close, session-open, default-handler, 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, jabber:iq:roster, 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, presence, disco, domain-filter, zlib, amp, message-carbons
sess-man:sess-man/plugins-concurrency 
sess-man:sess-man/skip-privacy false
sess-man:sess-man/trusted admin@test.test-d
sess-man:sess-man/offline-user-autocreate false
sess-man:sess-man/sm-threads-pool custom:100
sess-man:sess-man/force-detail-stale-connection-check true
sess-man:sess-man/stale-connection-closer-queue-size 1000
sess-man:sess-man/sm-cluster-strategy-class tigase.cluster.strategy.DefaultClusteringStrategy
sess-man:sess-man/error-forwarding drop
sess-man:sess-man/domain-name test-d

Tests results:

Test name Result Total time OK Average Description History
Version success 0 sec 1 55 ms Get server version Version
Configuration success 0 sec 1 101 ms Server configuration Configuration
Statistics success 0 sec 1 103 ms Server statistics Statistics
Basic 1 (c2s) success 0 sec 1 5 ms Stream open to server. Basic 1 (c2s)
Basic 2 (c2s) success 0 sec 1 26 ms XEP-0077 - In-Band Registration, register Basic 2 (c2s)
Basic 3 (c2s) success 0 sec 1 59 ms XEP-0077 - In-Band Registration - user unregister Basic 3 (c2s)
Basic 4 (c2s) success 0 sec 1 15 ms XEP-0078 Non-SASL authorization with plain password. Basic 4 (c2s)
Basic 5 (c2s) success 0 sec 1 18 ms XEP-0078 Non-SASL authorization with digest password. Basic 5 (c2s)
Basic 6 (c2s) success 0 sec 1 55 ms Send a message to self user and don't wait for response Basic 6 (c2s)
Basic 7 (c2s) success 0 sec 1 75 ms Message send to correct/available full JID: all-xmpp-test_1@test-d/def-user-resource, expecting response Basic 7 (c2s)
Basic 8 (c2s) success 0 sec 1 68 ms Message send to correct/available bare JID: all-xmpp-test_1@test-d, expecting response Basic 8 (c2s)
Basic 9 (c2s) success 0 sec 1 56 ms IQ stanza send to incorrect/unavailable full JID: all-xmpp-test_1@test-d/wrong-resource, expecting error response Basic 9 (c2s)
Basic 10 (c2s) success 0 sec 1 8 ms XEP-0092 - get entity version Basic 10 (c2s)
Basic 11 (c2s) success 0 sec 1 91 ms XEP-0039 Statistics Gathering Basic 11 (c2s)
Basic 12 (c2s) success 0 sec 1 398 ms Roster management test Basic 12 (c2s)
Basic 13 (c2s) success 0 sec 1 108 ms Roster with uppercase characters test, this tests verifies if the roster item removed in previous test is really removed from DB and empty on user relogin. Basic 13 (c2s)
Basic 14 (c2s) success 0 sec 1 81 ms XEP-0049: Private XML Storage Basic 14 (c2s)
Basic 15 (c2s) success 0 sec 1 58 ms Test for feature-not-implemented error which should be returned when client sends unsupported stanza Basic 15 (c2s)
Basic 16 (c2s) success 0 sec 1 72 ms XEP-0054: vcard-temp Basic 16 (c2s)
Basic 17 (c2s) success 0 sec 1 54 ms XEP-0199: XMPP Ping to domain 'test-d' the user is logged in Basic 17 (c2s)
Basic 18 (c2s) success 0 sec 1 54 ms XEP-0199: XMPP Ping to another, vrtual domain 'test-domain' on the server Basic 18 (c2s)
Basic 19 (c2s) success 0 sec 1 63 ms XEP-0030: XMPP Service Discovery Basic 19 (c2s)
Basic 20 (c2s) success 0 sec 1 52 ms Send a message without resource binding and expect an error response. Basic 20 (c2s)
Basic 21 (c2s) success 0 sec 1 308 ms Bug #431 - XMLUtil encoding problem: https://projects.tigase.org/issues/431 Basic 21 (c2s)
SSL 1 (c2s) success 0 sec 1 418 ms SSL socket connect. SSL 1 (c2s)
TLS 1 (c2s) success 0 sec 1 155 ms TLS connection open TLS 1 (c2s)
TLS 2 (c2s) success 0 sec 1 184 ms SASL authorization TLS 2 (c2s)
TLS 3 (c2s) success 0 sec 1 188 ms XMPP resource bind TLS 3 (c2s)
TLS 4 (c2s) success 0 sec 1 203 ms Establish XMPP session TLS 4 (c2s)
TLS Required 1 (c2s) success 0 sec 1 7 ms XEP-0077 - In-Band Registration, for domain requiring TLS but without TLS activation, expecting error. TLS Required 1 (c2s)
TLS Required 2 (c2s) success 0 sec 1 155 ms XEP-0077 - In-Band Registration, for domain requiring TLS with TLS activation, expecting success. TLS Required 2 (c2s)
Packet Order 1 (c2s) success 0 sec 1 145 ms Packet order test Packet Order 1 (c2s)
Packet Order 2 (c2s) success 0 sec 1 165 ms Packet order test Packet Order 2 (c2s)
Packet Order 3 (c2s) success 0 sec 1 177 ms Packet order test Packet Order 3 (c2s)
Packet Order 4 (c2s) success 0 sec 1 173 ms Packet order test Packet Order 4 (c2s)
Packet Order 5 (c2s) success 0 sec 1 152 ms Packet order test Packet Order 5 (c2s)
Privacy 1 (c2s) success 0 sec 1 114 ms Privacy lists management test Privacy 1 (c2s)
Privacy 2 (c2s) success 0 sec 1 55 ms Privacy lists - send a message to blocking-test-user_1 user Privacy 2 (c2s)
Privacy 3 (c2s) success 0 sec 1 58 ms Send a message to long-list-user_1 user Privacy 3 (c2s)
Presence 1 (c2s) success 1 sec 2 380 ms Presence subscription test between 'admin' and 'all-xmpp-test'. Presence 1 (c2s)
Presence 2 (c2s) success 0 sec 2 239 ms Presence cancel test between 'admin' and 'all-xmpp-test'. Presence 2 (c2s)
Presence 3 (c2s) success 1 sec 2 318 ms Presence unsubscribe test between 'admin' and 'all-xmpp-test'. Presence 3 (c2s)
Presence 4 (c2s) success 1 sec 2 358 ms Presence subscription between 'admin' and 'all-xmpp-test' again to prepare for the next test. Presence 4 (c2s)
Presence 5 (c2s) success 1 sec 2 379 ms Remove subscribed contact 'all-xmpp-test' from the roster of the user 'admin', all subscriptions should be cancelled automatically by the server. Presence 5 (c2s)
Presence 6 (c2s) success 0 sec 2 205 ms 2 user connections, each using a different resource. Presence 6 (c2s)
Presence 7 (c2s) success 1 sec 2 289 ms Presence subscription deny test between 'admin' and 'all-xmpp-test'. Presence 7 (c2s)
User Status 1 (c2s) success 0 sec 1 18 ms USER_STATUS command test to ensure interoperability with Yate User Status 1 (c2s)
User Status 2 (c2s) success 0 sec 1 9 ms USER_STATUS command test to ensure security, should receive forbidden error. User Status 2 (c2s)
Dynamic Roster 1 (c2s) success 0 sec 1 72 ms Dynamic roster storage test Dynamic Roster 1 (c2s)
Dynamic Roster 2 (c2s) success 0 sec 1 172 ms Dynamic roster merge test Dynamic Roster 2 (c2s)
Test IO (c2s) success 3 sec 10 317 ms Checking Tigase IO subsystem Test IO (c2s)
Load 1 (c2s) success 0 sec 1 58 ms Check whether the tester user account responds Load 1 (c2s)
Load 10 (c2s) success 0 sec 1 61 ms Send a command to tester_1 user to generate 10 messages on the server. Load 10 (c2s)
Load 100 (c2s) success 0 sec 1 58 ms Send a command to tester_1 user to generate 100 messages on the server. Load 100 (c2s)
Load 1000 (c2s) success 0 sec 1 131 ms Send a command to tester_1 user to generate 1000 messages on the server. Load 1000 (c2s)
Load 10000 (c2s) success 1 sec 1 961 ms Send a command to tester_1 user to generate 10000 messages on the server. Load 10000 (c2s)
Load 100000 (c2s) success 5 sec 1 5334 ms Send a command to tester_1 user to generate 100000 messages on the server. Load 100000 (c2s)
MUC 1 (c2s) success 0 sec 1 60 ms Send room create presence request to MUC component. MUC 1 (c2s)
PubSub 1 (c2s) success 0 sec 1 61 ms Get version from the pubsub component. PubSub 1 (c2s)
PubSub 2 (c2s) success 0 sec 1 75 ms Create a new node in the pubsub component. PubSub 2 (c2s)
PubSub 3 (c2s) success 0 sec 1 55 ms Add subscriptions to the node in the pubsub component. PubSub 3 (c2s)
PubSub 4 (c2s) success 0 sec 1 53 ms Add affiliations to the node in the pubsub component. PubSub 4 (c2s)
PubSub 5 (c2s) success 0 sec 1 110 ms Create a collection node in the pubsub component. PubSub 5 (c2s)
VHost 1 (c2s) success 0 sec 1 51 ms XEP-0199: XMPP Ping to virtual domain 'test-domain' on the server VHost 1 (c2s)
VHost 2 (c2s) success 0 sec 1 53 ms Reloading VHosts from non-admin account, expecting error message VHost 2 (c2s)
VHost 3 (c2s) success 0 sec 1 222 ms Updating VHost from non-admin account, expecting error message VHost 3 (c2s)
VHost 4 (c2s) success 0 sec 1 137 ms Removing VHost from non-admin account, expecting error message VHost 4 (c2s)
VHost 5 (c2s) success 0 sec 1 80 ms Reloading VHosts from admin account... VHost 5 (c2s)
VHost 6 (c2s) success 0 sec 1 50 ms XEP-0199: XMPP Ping to virtual domain 'vhost-1' which is not on the server, expecting error response VHost 6 (c2s)
VHost 7 (c2s) success 0 sec 1 142 ms Adding VHost 'vhost-1' from admin account VHost 7 (c2s)
VHost 8 (c2s) success 0 sec 1 50 ms XEP-0199: XMPP Ping to virtual domain 'vhost-1' on the server VHost 8 (c2s)
VHost 9 (c2s) success 0 sec 1 56 ms Removing VHost 'vhost-1' from admin account VHost 9 (c2s)
VHost 10 (c2s) success 0 sec 1 66 ms XEP-0199: XMPP Ping to virtual domain 'vhost-1' which is not on the server, expecting error response VHost 10 (c2s)
VHost 11 (c2s) success 1 sec 200 3 ms XEP-0199: XMPP Ping 200 non-existen vhosts on the server, expecting error responses VHost 11 (c2s)
VHost 12 (c2s) success 2 sec 200 8 ms Adding 200 virtual hosts from admin account VHost 12 (c2s)
VHost 13 (c2s) success 0 sec 200 1 ms XEP-0199: XMPP Ping all 200 virtual hosts on the server VHost 13 (c2s)
VHost 14 (c2s) success 0 sec 1 67 ms Reloading all VHosts from admin account... VHost 14 (c2s)
VHost 15 (c2s) success 1 sec 200 6 ms Removing 200 VHosts from admin account VHost 15 (c2s)
VHost 16 (c2s) success 0 sec 200 3 ms XEP-0199: XMPP Ping 200 non-existen vhosts on the server, expecting error responses VHost 16 (c2s)
VHost 17 (c2s) success 0 sec 1 56 ms Reloading all VHosts from admin account... VHost 17 (c2s)
Basic 1 (bosh) success 0 sec 1 122 ms Stream open to server. Basic 1 (bosh)
Basic 2 (bosh) success 0 sec 1 327 ms XEP-0077 - In-Band Registration, register Basic 2 (bosh)
Basic 3 (bosh) success 0 sec 1 443 ms XEP-0077 - In-Band Registration - user unregister Basic 3 (bosh)
Basic 4 (bosh) success 0 sec 1 322 ms XEP-0078 Non-SASL authorization with plain password. Basic 4 (bosh)
Basic 5 (bosh) success 0 sec 1 323 ms XEP-0078 Non-SASL authorization with digest password. Basic 5 (bosh)
Basic 6 (bosh) success 1 sec 1 563 ms Send a message to self user and don't wait for response Basic 6 (bosh)
Basic 7 (bosh) success 0 sec 1 537 ms Message send to correct/available full JID: all-xmpp-test_1@test-d/def-user-resource, expecting response Basic 7 (bosh)
Basic 8 (bosh) success 0 sec 1 534 ms Message send to correct/available bare JID: all-xmpp-test_1@test-d, expecting response Basic 8 (bosh)
Basic 9 (bosh) success 0 sec 1 531 ms IQ stanza send to incorrect/unavailable full JID: all-xmpp-test_1@test-d/wrong-resource, expecting error response Basic 9 (bosh)
Basic 10 (bosh) success 0 sec 1 221 ms XEP-0092 - get entity version Basic 10 (bosh)
Basic 11 (bosh) success 0 sec 1 546 ms XEP-0039 Statistics Gathering Basic 11 (bosh)
Basic 12 (bosh) success 1 sec 1 1154 ms Roster management test Basic 12 (bosh)
Basic 13 (bosh) success 0 sec 1 531 ms Roster with uppercase characters test, this tests verifies if the roster item removed in previous test is really removed from DB and empty on user relogin. Basic 13 (bosh)
Basic 14 (bosh) success 1 sec 1 1152 ms XEP-0049: Private XML Storage Basic 14 (bosh)
Basic 15 (bosh) success 0 sec 1 642 ms Test for feature-not-implemented error which should be returned when client sends unsupported stanza Basic 15 (bosh)
Basic 16 (bosh) success 0 sec 1 748 ms XEP-0054: vcard-temp Basic 16 (bosh)
Basic 17 (bosh) success 0 sec 1 534 ms XEP-0199: XMPP Ping to domain 'test-d' the user is logged in Basic 17 (bosh)
Basic 18 (bosh) success 0 sec 1 531 ms XEP-0199: XMPP Ping to another, vrtual domain 'test-domain' on the server Basic 18 (bosh)
Basic 19 (bosh) success 0 sec 1 637 ms XEP-0030: XMPP Service Discovery Basic 19 (bosh)
Basic 20 (bosh) success 0 sec 1 428 ms Send a message without resource binding and expect an error response. Basic 20 (bosh)
Basic 21 (bosh) success 1 sec 1 952 ms Bug #431 - XMLUtil encoding problem: https://projects.tigase.org/issues/431 Basic 21 (bosh)
Basic 1 (bosh-keep-alive) success 0 sec 1 115 ms Stream open to server. Basic 1 (bosh-keep-alive)
Basic 2 (bosh-keep-alive) success 0 sec 1 324 ms XEP-0077 - In-Band Registration, register Basic 2 (bosh-keep-alive)
Basic 3 (bosh-keep-alive) success 0 sec 1 417 ms XEP-0077 - In-Band Registration - user unregister Basic 3 (bosh-keep-alive)
Basic 4 (bosh-keep-alive) success 0 sec 1 319 ms XEP-0078 Non-SASL authorization with plain password. Basic 4 (bosh-keep-alive)
Basic 5 (bosh-keep-alive) success 0 sec 1 321 ms XEP-0078 Non-SASL authorization with digest password. Basic 5 (bosh-keep-alive)
Basic 6 (bosh-keep-alive) success 1 sec 1 526 ms Send a message to self user and don't wait for response Basic 6 (bosh-keep-alive)
Basic 7 (bosh-keep-alive) success 0 sec 1 530 ms Message send to correct/available full JID: all-xmpp-test_1@test-d/def-user-resource, expecting response Basic 7 (bosh-keep-alive)
Basic 8 (bosh-keep-alive) success 0 sec 1 538 ms Message send to correct/available bare JID: all-xmpp-test_1@test-d, expecting response Basic 8 (bosh-keep-alive)
Basic 9 (bosh-keep-alive) success 0 sec 1 529 ms IQ stanza send to incorrect/unavailable full JID: all-xmpp-test_1@test-d/wrong-resource, expecting error response Basic 9 (bosh-keep-alive)
Basic 10 (bosh-keep-alive) success 0 sec 1 217 ms XEP-0092 - get entity version Basic 10 (bosh-keep-alive)
Basic 11 (bosh-keep-alive) success 0 sec 1 555 ms XEP-0039 Statistics Gathering Basic 11 (bosh-keep-alive)
Basic 12 (bosh-keep-alive) success 1 sec 1 776 ms Roster management test Basic 12 (bosh-keep-alive)
Basic 13 (bosh-keep-alive) success 0 sec 1 531 ms Roster with uppercase characters test, this tests verifies if the roster item removed in previous test is really removed from DB and empty on user relogin. Basic 13 (bosh-keep-alive)
Basic 14 (bosh-keep-alive) success 1 sec 1 1153 ms XEP-0049: Private XML Storage Basic 14 (bosh-keep-alive)
Basic 15 (bosh-keep-alive) success 0 sec 1 630 ms Test for feature-not-implemented error which should be returned when client sends unsupported stanza Basic 15 (bosh-keep-alive)
Basic 16 (bosh-keep-alive) success 0 sec 1 443 ms XEP-0054: vcard-temp Basic 16 (bosh-keep-alive)
Basic 17 (bosh-keep-alive) success 0 sec 1 297 ms XEP-0199: XMPP Ping to domain 'test-d' the user is logged in Basic 17 (bosh-keep-alive)
Basic 18 (bosh-keep-alive) success 0 sec 1 524 ms XEP-0199: XMPP Ping to another, vrtual domain 'test-domain' on the server Basic 18 (bosh-keep-alive)
Basic 19 (bosh-keep-alive) success 0 sec 1 631 ms XEP-0030: XMPP Service Discovery Basic 19 (bosh-keep-alive)
Basic 20 (bosh-keep-alive) success 0 sec 1 422 ms Send a message without resource binding and expect an error response. Basic 20 (bosh-keep-alive)
Basic 21 (bosh-keep-alive) success 0 sec 1 748 ms Bug #431 - XMLUtil encoding problem: https://projects.tigase.org/issues/431 Basic 21 (bosh-keep-alive)
Packet Order 1 (bosh-keep-alive) success 0 sec 1 475 ms Packet order test Packet Order 1 (bosh-keep-alive)
Packet Order 2 (bosh-keep-alive) success 0 sec 1 472 ms Packet order test Packet Order 2 (bosh-keep-alive)
Packet Order 3 (bosh-keep-alive) success 0 sec 1 310 ms Packet order test Packet Order 3 (bosh-keep-alive)
Packet Order 4 (bosh-keep-alive) success 0 sec 1 482 ms Packet order test Packet Order 4 (bosh-keep-alive)