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

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.
主站蜘蛛池模板: 鲁甸县| 兴国县| 阿图什市| 东兰县| 巫山县| 苗栗市| 惠州市| 南安市| 太和县| 河北区| 绵阳市| 邢台市| 田阳县| 静安区| 东安县| 庆城县| 肥乡县| 奈曼旗| 丹巴县| 奇台县| 油尖旺区| 灵山县| 潮安县| 金昌市| 海兴县| 繁昌县| 凤阳县| 义乌市| 舟山市| 枣强县| 家居| 普兰店市| 日照市| 张家港市| 灵璧县| 雷州市| 叙永县| 常宁市| 衡南县| 德兴市| 江山市|