5 ms·
one of the hard things about game dev and testing is that there are all sorts of bits of code that don't really have strong "success criteria". A lot of it come
by grogenaut 9y ago
one of the hard things about game dev and testing is that there are all sorts of bits of code that don't really have strong "success criteria". A lot of it comes down to "did that feel good" or "does that look better" which is very hard to quantify in unit tests.
However I think there's also a huge swath of code in games that can be unit tested. Scorekeeping systems, ai evaluation trees, etc. The industry as a whole has much more of an integration or manual testing bent focus than a unit testing one.
I will say that coming from a no tester all dev unit / integration test world to no automated test, 30-120 high skill manual tester world (30 gameplay testers, every other employee using new builds 2x daily), there is definitely something to having lots of really good manual testers with very short feedback loops. People noticed bugs that were hard to test for within 10-15 minutes of checkin on a regular basis.
Really if I did a studio I'd have both but then I'd likely be spending too much money and go out of business.
- lallysingh 9y agoWhy would unit testing cost extra? It saves money.
- lgas 9y agoLike most technical work, it saves money when done well and costs money when done poorly. Most people find themselves somewhere in the middle most of the time so it turns out the discussion is a little more nuanced than that.
- grogenaut 9y agoExactly! But it's so much easier to be an unyielding zealot than to think and understand why and if something is working. As I said above I'm a big advocate of tdd... Do it all the time. So when I say I wouldn't do it for parts of games maybe I have a reason (to gp not you)
- coldtea 9y agoOnly if you intend to change/refactor stuff later. Which in games never happens: engines are mostly thrown out at the end of the game.
- pmarreck 9y agoHasn't Gamebryo evolved since the earliest days at Bethesda?
- grogenaut 9y agoEngineers have to do work.. I would unit test core libs... I would also hire manual tester because they were very useful. I'd likely not chase down 100% automated coverage. The goal is to ship a game not have 100% coverage. And I work 100% pure tdd in my day job and side projects so take that for what it's worth.
- bunderbunder 9y ago> there are all sorts of bits of code that don't really have strong "success criteria" The approval testing model is really useful for this sort of stuff. http://approvaltests.com/ http://approvaltests.com/