I need to plan a test for an application that sits on a linux machine, listens to the tcp/ip communication, parses relevant data (http post and get events, sql queries etc.) and writes it into files.
Does anyone have an idea about how to test such an application? I don't have any experience with such testing before.
Since it is sitting on linux machine, you want to make sure its posture is proper (installation testing - http://testinggeek.com/testingtype.asp), communicating with other machines/clients you might want to test communication, Its parsing so you need to provide different types of data to parse and have conditions to raise those events and if it is writing output in a file, compare it with some known good file... you can write thousands of cases on similar lines..
Some of the possibilities you can test are, do installation testing as Geek said and also you can do database,path testing as well. you can also use regular expressions as it creates a file and stores. Create MD file and compare them. you can also do server side validation.
In addition have you checked with the Developers on what they think are going to be the major fault points or areas that they would like to see tested? I usually find checking with the creators is a good step in getting some additional info, and if they are honest about their work they will tell you some of their concerns on things that might or might go wrong.
It all depend what sort of application you are testing but let me give you example of the product that I have tested recently, the product was network management tool and allows the Admin to deploy to a Linux machine. during my testing I checking following points
1) After deployment does my Linux still talk to other network machines (Ping IP to others)
2) after the deployment can I still change IP address of eth0 and ping out and does my application alert me IP changes
3) Activate different Ethernet so for example if you have more than one Ethernet card, then swap the eth cable and set eth1 to default communication path so when you are communicating with Linux machine or externally pinging from Linux machine your application should pick up the changes and allow you to communication via eth1 rather than eth0.
4) Also try to test with IPv6
You can also Test Bandwidth but it depends what you are testing and what your application does. So if you can hint me what sort of application you are planning to test and when you install application on to Linux what are you expecting your application to return then I might be able to help you further.
Keep in mind some time using different user than root cause problem to your application so you might consider this section as well. [img]/images/graemlins/smirk.gif[/img]