Software Engineering at Google by Titus Winters & Tom Manshreck & Hyrum Wright

Software Engineering at Google by Titus Winters & Tom Manshreck & Hyrum Wright

Author:Titus Winters & Tom Manshreck & Hyrum Wright [Titus Winters]
Language: eng
Format: epub
ISBN: 9781492082798
Publisher: O'Reilly Media, Inc.
Published: 2020-03-02T18:30:00+00:00


Test Data

A test needs data, and a large test needs two different kinds of data:

Seeded data

Data preinitialized into the system under test reflecting the state of the SUT at the inception of the test

Test traffic

Data sent to the system under test by the test itself during its execution

Because of the notion of the separate and larger SUT, the work to seed the SUT state is often orders of magnitude more complex than the setup work done in a unit test. For example:

Domain data

Some databases contain data prepopulated into tables and used as configuration for the environment. Actual service binaries using such a database may fail on startup if domain data is not provided.

Realistic baseline

For an SUT to be perceived as realistic, it might require a realistic set of base data at startup, both in terms of quality and quantity. For example, large tests of a social network likely need a realistic social graph as the base state for tests: enough test users with realistic profiles as well as enough interconnections between those users must exist for the testing to be accepted.

Seeding APIs

The APIs by which data is seeded may be complex. It might be possible to directly write to a datastore, but doing so might bypass triggers and checks performed by the actual binaries that perform the writes.



Download



Copyright Disclaimer:
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.