Der beste Weg, um einfache Fälle in Spielen zu testen


9

Beim Entwerfen und Testen eines neuen Spiels gewöhnen sich die Leute, die Funktionen ausprobieren, häufig an die Dinge und probieren die "dummen Wege" nicht mehr aus. Wenn die Entwicklung also etwas kaputt macht, ist dies möglicherweise eine Funktion, die nur ein neuer Benutzer ausprobieren würde. Was sind einige der besten Möglichkeiten, um sicherzustellen, dass die "dummen Fälle" Ihres Spiels getestet werden, wenn es endlich veröffentlicht wird oder nach einem größeren Update? Methodik, Softwareunterstützung, vielleicht sogar Websites, auf denen Leute Tests für Sie durchführen, und so weiter.

Antworten:


9

Ein paar Dinge, die ich sagen würde, sind wichtig:

Ermutigen Sie Programmer Unit Testing

Dies stellt sicher, dass bestimmte dumme Fehler, wenn es einen Unit-Test für sie gibt, nicht erneut auftreten, da der Unit-Test fehlschlägt, wenn sie dies tun. Dies erfordert eine Änderung der Programmiermethodik, aber meiner Meinung nach lohnt es sich voll und ganz.

Automatisieren Sie alle möglichen Tests

Erstellen Sie über Unit-Tests hinaus eine Reihe automatisierter Funktions- und Abnahmetests, die für jeden Build ausgeführt werden, um sicherzustellen, dass bestimmte Builds gut sind. Wenn Sie über skriptfähige Steuerelemente verfügen und Ihr Spiel im Allgemeinen konsistent ist, können Sie viele Fehler automatisch testen.

Erstellen Sie einen mehrstufigen Testplan

Stellen Sie sicher, dass Ihre Tester einen Testplan haben, der die wichtigsten Fehler testet. Dies sollte mehrstufig sein:

  • Rauchtest: Testet, dass das Spiel in den meisten Fällen nicht abstürzt.
  • Regelmäßiger Test: Testet seltenere Fälle.
  • Tränktest: Gehen Sie so tief wie möglich und entfernen Sie so viele häufige Fehler wie möglich. Testen Sie auch, ob das Spiel sehr lange (Tage) laufen kann, ohne abzustürzen.

Erstellen Sie diesen Testplan und befolgen Sie ihn bei jedem Build.


11

Eine Art Code-Coverage-Ansatz für Testfälle kann mit einfachen Flags durchgeführt werden, die ausgelöst werden, sobald der Codeblock im Spiel ausgeführt wurde. Durch die Anzeige, welche Flags auf dem Bildschirm ausgelöst und nicht ausgelöst wurden, können Tester erkennen, welche Fälle abgedeckt wurden und welche nicht.

So einfach es ist, es ist immer noch effektiv, solange die Flags aussagekräftige Namen haben, damit die Tester herausfinden können, was zu tun ist.

Diese Technik wird Matthew Jack zugeschrieben, der sie in Crysis implementiert hat.


3
interessantes Konzept, +1
Falstro

Dies kann tatsächlich automatisiert werden. "Führen Sie das Spiel mit aus -debugFlags, überprüfen Sie die Ausgabe und stellen Sie sicher, dass wir die xAnzahl der Flags erreichen." +1
Asche999

3

Einige gute Antworten hier auf der Programmierseite. Ich werde eine hinzufügen, die mehr designorientiert ist.

Lassen Sie Ihre Systemdesigner Edge-Case-Testpläne für Tester schreiben

Wenn sie wissen, was sie tun, ist es sehr wahrscheinlich, dass die Person, die hinter dem Entwerfen eines Systems oder dem Erstellen von Skripten für eine Sequenz im Spiel steht, die Randfälle dieses Systems kennt und weiß, wo es ausfallen kann. Sie sollten auch eine Vorstellung davon haben, wo das System mit anderen interagiert. Wenn sie einen Testplan schreiben oder mit den Testern besprechen, wo wahrscheinlich etwas schief geht, können alle Zeit sparen.


1

Sie sollten das sogenannte Affentest untersuchen. Es kann viele der Fehler dieses Typs abfangen:

https://secure.wikimedia.org/wikipedia/en/wiki/Monkey_test

Sie müssen auch User Experience-Tests mit "Kleenex-Testern" organisieren, Testern, die Ihr Spiel zum ersten Mal sehen und die Sie nie wieder verwenden werden. Die Organisation ist etwas teuer und kompliziert, aber die Mühe lohnt sich. Wenn Sie dies tun, filmen Sie jeden Test mit 3 Kameras: eine auf dem Bildschirm, eine auf der Steuerung und eine auf dem Gesicht des Testers, um Frustrationen zu erkennen.


1

Gute Frage, jede Antwort in diesem Thread ist eine ausgezeichnete Antwort. Eine Sache hinzuzufügen:

Nach meiner Erfahrung (30 Jahre Softwareentwicklung): Apps und Spiele sind zuverlässiger, wenn mindestens ein Mitglied der Testgruppe ein erfahrener Gorilla-Tester ist , der Ad-hoc-Tests beherrscht, Apps missbraucht und Spiele absichtlich falsch findet Fehler der vom Originalplakat beschriebenen Art. Gorilla-Tester haben eine ungewöhnliche Fähigkeit - wenn Sie eine gute finden, behalten Sie sie in Ihrem Team.

Ein Beispiel für effektive Gorilla-Tests finden Sie unter: www.youtube.com/watch?v=8C-e96m4730;)

Um die Antworten in diesem Thread zusammenzufassen: Effektive Softwarequalitätsstrategien sind vielfältig und kombinieren mehrere Ansätze, um ein hohes Maß an Vertrauen in die funktionale Qualität und Zuverlässigkeit Ihres Spiels zu erreichen.


0

Ein interessanter Trick, von dem ich von einem Freund gehört habe, um Grafiken zu testen. während eines bekanntermaßen guten Durchlaufs eines Levels Rekord Leistungsstatistiken von der GPU in regelmäßigen Abständen (Polys auf dem Bildschirm zum Beispiel). Sie können diese Route dann erneut abspielen. Wenn sich die Zahlen außerhalb einer bestimmten Toleranz ändern, bedeutet dies möglicherweise, dass etwas nicht mehr korrekt angezeigt wird.


0

Eine einfache Sache, die sehr hilfreich ist, insbesondere bei Stresstests und Netzwerktests. Ermöglichen Sie Ihrer KI, gegen andere KI zu spielen. Wenn Sie Ihr Spiel alleine lassen oder eine kleine Gruppe von KI über ein Netzwerk für ein Wochenende spielen können, können Sie viel lernen.

Natürlich alles protokollieren.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.