Project

General

Profile

Recommended development and debug tools / environment ?

Matthew M
Added over 5 years ago

Hi Tigase team

We are very interested in this awesome project and we plan to customize it for our own service, and we are also very interested in contributing to the existing Tigase projects if it could be helpful. The first thing comes to our mind, after debugging / testing it for a while, is that we wonder if you have a recommendation of setup or tools to speed up development?

As the server-client interactions with XML packets can get quite complicated, and we guess your team might have some handy tools or recommendations.

For example, we currently use Eclipse for code developing, what's the best way to "test" a feature of the server, for example, the various MUC room settings.

Do you use standard xmpp client to configure the room, or do you use programatic tools, such as command line, or your own Tigase-client to trigger such configuration to the server?

Many of the standard clients do not implement a full set of xmpp protocols, so we are not able to test the server at all.

What do you use to test the server in this case? For example, add a member to 'outcast' list of a room. Is Tigase Command Line Project helpful in this case?

It would be also helpful if we can use JUNIT to test some features, which is also a guidance on how to use the server features. But we did not find any unit tests in tigase-server, although there are plenty test cases in other tigase projects. Is the server side test cases in other project like Test Suites ?

Lastly, do you think Tigase Client Library useful in the context of writing test cases and tools?

Many thanks!


Replies (3)

Added by Wojciech Kapcia TigaseTeam over 5 years ago

The IDE is only a matter of personal preference - we use Eclipse, NetBeans and Emacs.

For testing features we use mostly regular xmpp clients, most often Psi which offers relatively wide support for XMPP features. If something is missing then we turn to use XML console of the client.

Subsequently - when it comes to automation of the testing of server features we use Tigase Test Suite which allows us to verify whole chain of processing that goes inside Tigase Server, which could be relatively hard to achieve using junit testing.

We encourage you to try to write test cases for TTS and then submit them.

Avatar?id=6023&size=32x32

Added by Artur Hefczyc TigaseTeam over 5 years ago

Zack M wrote:

Hi Tigase team

We are very interested in this awesome project and we plan to customize it for our own service, and we are also very interested in contributing to the existing Tigase projects if it could be helpful. The first thing comes to our mind, after debugging / testing it for a while, is that we wonder if you have a recommendation of setup or tools to speed up development?

We don't have any recommendation. Each member of our team uses whatever suits him best. I wrote most of the code using Emacs, switched to NB not long time ago.

As the server-client interactions with XML packets can get quite complicated, and we guess your team might have some handy tools or recommendations.

Yes we do have. Our main testing tool is TTS - Tigase Test Suite: Tigase Testsuite

This is our tool for functional tests: Tigase test results

We also use Tsung for load tests, JUnit for some parts of the code, custom clients based on our JaXMPP library.

For example, we currently use Eclipse for code developing, what's the best way to "test" a feature of the server, for example, the various MUC room settings.

Do you use standard xmpp client to configure the room, or do you use programatic tools, such as command line, or your own Tigase-client to trigger such configuration to the server?

Many of the standard clients do not implement a full set of xmpp protocols, so we are not able to test the server at all.

What do you use to test the server in this case? For example, add a member to 'outcast' list of a room. Is Tigase Command Line Project helpful in this case?

We try to use TTS as much as possible. Sometimes JUnit. Tsung for load tests.

It would be also helpful if we can use JUNIT to test some features, which is also a guidance on how to use the server features. But we did not find any unit tests in tigase-server, although there are plenty test cases in other tigase projects. Is the server side test cases in other project like Test Suites ?

Lastly, do you think Tigase Client Library useful in the context of writing test cases and tools?

Yes, we use it to create a custom, command line clients to run specific tests.

Added by Matthew M over 5 years ago

Thanks a lot for the information, and this is very helpful!

    (1-3/3)