System Testing for eDirectory consists of various quality factors such as Stress, Reliability, Scalability , Performance, Compatibility etc.. which requires different tools to test/monitor/report. There should be a centralized controller having some GUI/CLI front end, from where all the quality factor’s test can be configured/start/stop/monitor and report the result.
We use LoadRunner and Winrunner for some of the test cases. These Tests can be started from windows machines and currently we do this using GUI of Loadrunner/Winrunner. But there are Command-Line options available, which can start a particular scenario, stop it and analyze the test and generate the report in html/xml file. And these commands can be run using STAF (Software Test Automation Framework) from a Linux Controller.
Similarly, we run DIRMARK test, We can start these tests also using STAF from a Linux controller.
Again, We do install/uninstall eDirectory for testing purposes. In Unix-Like OS, its quite easy to write some wrapper scripts, which will need a config.ini file and do the work. In windows, We can use Winrunner to capture the process of install/uninstall and get the scripts. These scripts can be run using command line from windows machine, which in turn can be called from a Linux controller.
Problem comes with Netware. I didn’t get any idea, How can I Install/Uninstall eDirectory in Netware from Linux controller. Also, If I need to run any command in Netware and get the result files from that, How do I do that.
We need to capture various OS-specific parameters during the test, like CPU usage by ndsd, Memory, Threads, OS name, Hardware details etc.. We are using top/ps/perfmon etc. utilities for these. There are tools like Munin/Nagios which can capture data from other servers from Linux Controller.
My Idea is to have, a single Folder consisting of all the tools (like STAF/top/Nagios etc) and the scripts (Written in Shell/Perl), so that, If I copy this folder to another Linux machine, That machine should be able to act as a controller and, from there I should be able to run any test case, by just providing few setup and scenario details.
The controller should go to a machine, Install eDirectory, configure it, upload users as per the scenario, then go to Load runner controller, configure the IP of newly configured eDirectory server and start doing Bind/Add/Modify/Delete/Search etc.. against eDirectory server. After completion controller should generate the report in Loadrunner controller machine and get that into Linux Controller. Analyze the result and sent the report to concerned stake-holders. Also this Linux Controller should keep an eye on eDirectory server for any memory buildup or core dumps.
May be someday, We will use this controller.