官术网_书友最值得收藏!

The game tester

The game tester is the member of the team who takes care of checking that the game works as expected and doesn't crash, that controls are clear, intuitive, and effective, that game mechanics are consistent, that the game logic works properly, and that gameplay is fun.

Game testing can be called into play at different moments during the development. As a general rule, a game should enter its testing phase as soon as a prototype is available. There is no better way to understand if a game mechanic is a good one than by asking someone to try it and provide feedback.

It is mandatory that the tester is not a person who's developing the game, because the objectivity of the tester's opinion is a crucial element in any stage of its development, and in the early stages in particular. Generally speaking, the cost of correcting a mechanic is proportional to the time that has passed since its implementation.

The thing that should be immediately clear, especially to our younger readers, is that testing a game doesn't mean that people are paid to merely play it! Sure, they need to play the game to test it, but finding and reporting bugs has little to do with playing games. A good tester must be able to describe the bug in detail and explain how it can be reproduced to help the development team to identify its causes and correct them.

That the testing is a low entry level job in the game industry, is just half the truth. As we will see during the course of this section, a good tester requires competency, and exceptional communication skills. But it is also true that if you cannot prove your talent in art, programming, or business administration with a strong portfolio or work experience, then starting out as a full time tester for a big game developer or a team is a very good way to kick-start your career in the game industry!

The tools of deconstruction

The main tools for a mobile game tester are mobile phones and their interfaces, mostly touch interfaces and gyroscopes. The tester thus needs to be at ease with mobile devices and their features to test mobile games.

During the early stages of development, it is very likely that testing will be accomplished on emulators, software that approximates the functionality of a mobile device on a PC for testing purposes. There are several reasons to use emulators in the early stages of development. One is that sometimes application development involves the use of scripts that can be dangerous to run on actual devices, because they could destroy some phone functionality or lead to a break of terms of agreement with an operator. Another is merely that the actual devices may not be available.

On the other hand, the fact that a game works on the emulator doesn't mean that it won't have problems when running on the actual phone, due to the fact that, as we said, the emulator only approximates the functionality of a phone, it's not the phone itself.

Another problem with emulators is that, since they run on PCs, they don't allow testing the touch interface of the phone. Most of the times, touch commands are replicated via the mouse, which means, for example, that multitouch functionality cannot be tested at all. At some point, a game needs to be tested on the real devices it is meant to run on! More on the practices of game testing will be seen in Chapter 9, Prototyping.

The following screenshot represents a screenshot from a standard software debug report:

The tools of deconstruction

Aspects of game testing

There are several aspects of a game that need to be tested and different game genres require different testing methodologies. A mobile game tester must accomplish specific tasks that depend on the distinctive characteristics of mobile phones and handheld devices. Among them are the following:

  • Functionality testing: This aims to look for general problems with the game or its User Interface, in order to check for issues regarding stability, game mechanics, and glitches (game asset failures).
  • Compatibility testing: This is meant to check that the game works with different hardware and software configurations. It is a very important practice for PC games and for mobile titles in particular. It is crucial to test the game performances on low end and high end devices to check them.
  • Localization testing: This checks that all in-game text and speech are correct in titles that are shipped in different languages. There is no need to say that, to be a localization tester, you need to be native in the language in which the game must be translated and at least fluent in the original language of the game.
  • Stress testing (monkey testing): This is meant to check how the application responds to chaotic and unpredictable events. Mobile phones are subjected to several kinds of such events: incoming calls and messages, updates, undesired button presses, screen locks, automatic standby, and so on. It takes a lot of time to carry these tests over, especially if they need to be repeated on different devices.
  • Compliance testing: This is required to check if a game meets standards, license agreements, and terms of use that are specific for each developing platform. To ship a game on the Apple Store, for example, it must have a unique name, refer to a certain category, must provide a link to the developer for customer care issues, it must not contradict the Human Interface Guideline, and so on. All these aspects are the responsibility of the tester.
  • Beta testing: This is done during the final stage of development; it refers to the first publicly available version of a game. Public betas are effective because thousands of fans may find bugs that the developer's testers did not. Mobile games don't usually go under beta testing though. It is a very time consuming process and it needs licenses to be exchanged between developers and testers in order to allow their devices to run the tests. We mention this practice here mainly for the sake of completeness to describe the role of the game tester.
主站蜘蛛池模板: 互助| 潞城市| 香港 | 抚州市| 青铜峡市| 嵩明县| 康保县| 吴川市| 台北县| 手机| 红原县| 平塘县| 棋牌| 犍为县| 开远市| 大英县| 衡东县| 榆中县| 石棉县| 竹溪县| 句容市| 都昌县| 扎兰屯市| 肃宁县| 潮州市| 嫩江县| 措勤县| 蓬安县| 黑河市| 吴川市| 托克逊县| 贺州市| 南康市| 安康市| 抚顺县| 临潭县| 南阳市| 华坪县| 涿州市| 修水县| 溆浦县|