PDA

View Full Version : Automated testing



phantomwhale
July 17th, 2011, 03:40
To ruleset / extension authors (and Smiteworks staff),

What sort of testing is everyone doing ? I've been falling back to manual testing and playtesting for almost everything, but as I add more features I feel this house of cards is going to keep toppling.

Is there any way to run testing under the hood (e.g. away from the GUI) ? I thinking about LUA code here, but as it makes so many calls to core library stuff, I can't think how you can execute it in any meaningful way outside of the FGII app ?

And GUI testing can be so... fragile, so I'm not sure that's the right path either.

Any ideas or better ways of doing this out there ?

Cheers,
Ben (-PW-)

Zeus
July 17th, 2011, 08:00
Not that I am aware of. Doug and John may have a more advanced development environment set up though that allows for it.

As for me, I tend to test as much a I can from within the FGII GUI but as there is often a very broad scope for testing, I also heavily rely on the community to assist me by reporting bugs etc.

To speed up testing I often use test harness scripts which perform user actions (open a window, change a field value, drop and item, throw dice etc. etc.) to emulate client activity or to perform mundane or repetitive tasks. e.g. I have a script that will fire off multiple attack rolls to help me test the 4E Fumbles & Critical Hits extension.

I use a couple of Debug packages to help during testing and debugging. One is the Debug package from JPG, the other is my own containing support methods and constants.

Having said all that, you COULD use a load test tool (e.g. JMeter or MS Visual Studio Load Test) to capture real FGII client - host network traffic and then use the captured traffic to build generic scripts which emulate client activity on the network. The process is a lot more involved and little more complex to setup but would allow you to test the functionality of the ruleset outside of the FGII GUI. This is pretty much the industry approach for testing applications with large/complex functionality and/or large user bases.

Moon Wizard
July 17th, 2011, 21:53
That's one of the challenges I've been having with development. What do I focus on?

* write new features for popular game systems
* write new features for FG
* write new features for ruleset developers
* write new features for module developers
* fix broken stuff
* document features
* make interface easier to use
* implement automated testing
* etc.

There's just not enough time in the day. That is one of the reasons why we have to use the "Test" version to help us sound out each version, since we don't have the resources to test heavily or in an automated way.

Regards,
JPG