Results 1 to 3 of 3

Thread: KeeperFX Test Maps

  
  1. #1
    KeeperFX Author mefistotelis's Avatar
    Join Date
    Sep 2009
    Location
    Poland
    Posts
    1,240

    Default KeeperFX Test Maps

    As some of you may know, professional software is always tested before release.

    The tests have usually two levels - there are tests of internal parts of the software (Unit Tests), and tests of the whole software (System Tests). Actually, for every developer, most companies hire 2 people who write and integrate tests.

    One of the problems with KeeperFX is that it has no tests. This means when a developer makes mistake and breaks something, he doesn't know that until someone played the game and recognized the bug.
    And why there are no tests? Because noone wanted to spent time on writing them.

    I think it's time to start making test suite for KeeperFX. Since there's still noone interested in writing them in terms of programming, maybe we could use another solution - prepare test levels.
    Recently I made a few maps to test problems with computer player gold digging - and fixed several problems thanks to these. For example, computer player wasn't able to dig for gold if the vein was at specific distance to his rooms. Also, thanks to these tests I noticed that computer player isn't able to dig to gem slabs which are surrounded by other gem slabs - so if you make a "+" with gems, computer won't dig to it.

    So, what we need for that:
    - A way to execute test level with information if the test passed or failed (ie. WIN_GAME/LOSE_GAME will tell whether we've passed/failed)
    - A way to execute all such test levels automatically in a row (so WIN_GAME/LOSE_GAME should automatically close KeeperFX in that mode)
    - Set of rules for creating the test levels (ie. every level should test one specific functionality, and should never execute longer than 100000 game turns - just an example)

    Well, what do you think?

  2. #2
    Beetle Stanislas Dolcini's Avatar
    Join Date
    Aug 2012
    Location
    France
    Posts
    113
    Gamer IDs

    Steam ID: StanleySweet Raptr ID: stanleysweet

    Default Re: KeeperFX Test Maps

    Quote Originally Posted by mefistotelis View Post
    As some of you may know, professional software is always tested before release.

    The tests have usually two levels - there are tests of internal parts of the software (Unit Tests), and tests of the whole software (System Tests). Actually, for every developer, most companies hire 2 people who write and integrate tests.

    One of the problems with KeeperFX is that it has no tests. This means when a developer makes mistake and breaks something, he doesn't know that until someone played the game and recognized the bug.
    And why there are no tests? Because noone wanted to spent time on writing them.

    I think it's time to start making test suite for KeeperFX. Since there's still noone interested in writing them in terms of programming, maybe we could use another solution - prepare test levels.
    Recently I made a few maps to test problems with computer player gold digging - and fixed several problems thanks to these. For example, computer player wasn't able to dig for gold if the vein was at specific distance to his rooms. Also, thanks to these tests I noticed that computer player isn't able to dig to gem slabs which are surrounded by other gem slabs - so if you make a "+" with gems, computer won't dig to it.

    So, what we need for that:
    - A way to execute test level with information if the test passed or failed (ie. WIN_GAME/LOSE_GAME will tell whether we've passed/failed)
    - A way to execute all such test levels automatically in a row (so WIN_GAME/LOSE_GAME should automatically close KeeperFX in that mode)
    - Set of rules for creating the test levels (ie. every level should test one specific functionality, and should never execute longer than 100000 game turns - just an example)

    Well, what do you think?
    I think that would be great. A good thing would be that we could fast test the level. I mean like logging what the computer has done but with no graphic display except a screenshot of the end map, to see if everything has gone right.

    What does test suite looks like in programming ?

  3. #3
    KeeperFX Author mefistotelis's Avatar
    Join Date
    Sep 2009
    Location
    Poland
    Posts
    1,240

    Default Re: KeeperFX Test Maps

    Quote Originally Posted by Stanislas Dolcini View Post
    What does test suite looks like in programming ?
    Unit Tests are usually stand-alone binaries which have the tested code compiled into itself. They use the tested block in multiple scenarios and then check if the result matches with expected values.

    System Tests are usually a collection of binaries and scripts which use tested software in the same form as end-user would. They cover more complicated scenarios than Unit Tests.

    If either of these tests, if there is some kind of dependency on external components which we don't really want to test, then such components are replaced by "Mocks" - which are kind of dummies, prepared in a way that the tested software will treat it as something real.

    There's an extensive article about testing software in Wikipedia.

Similar Threads

  1. Central Test Discussion
    By Metal Gear Rex in forum Test Realms
    Replies: 1
    Last Post: May 5th, 2013, 16:21
  2. Test Realm Procedure
    By Metal Gear Rex in forum Test Realms
    Replies: 0
    Last Post: May 5th, 2013, 16:16
  3. Test Realm Archive
    By Metal Gear Rex in forum Test Realms
    Replies: 0
    Last Post: May 5th, 2013, 16:15
  4. Can not overwrite Maps/save new maps
    By Taliasam in forum DK1 Mapmaking
    Replies: 5
    Last Post: November 10th, 2012, 14:56
  5. Imp Skeletal rig Test
    By Blutonium in forum War for the Overworld
    Replies: 16
    Last Post: July 25th, 2011, 18:59

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •