OLD | NEW |
1 Correctness Testing | 1 Correctness Testing |
2 =================== | 2 =================== |
3 | 3 |
4 Skia correctness testing is primarily served by a tool named DM. | 4 Skia correctness testing is primarily served by a tool named DM. |
5 This is a quickstart to building and running DM. | 5 This is a quickstart to building and running DM. |
6 | 6 |
7 ~~~ | 7 ~~~ |
8 $ python bin/sync-and-gyp | 8 $ python bin/sync-and-gyp |
9 $ ninja -C out/Debug dm | 9 $ ninja -C out/Debug dm |
10 $ out/Debug/dm -v -w dm_output | 10 $ out/Debug/dm -v -w dm_output |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
42 | 42 |
43 As you become more familiar with DM, this spew may be a bit annoying. If you | 43 As you become more familiar with DM, this spew may be a bit annoying. If you |
44 remove -v from the command line, DM will spin its progress on a single line | 44 remove -v from the command line, DM will spin its progress on a single line |
45 rather than print a new line for each status update. | 45 rather than print a new line for each status update. |
46 | 46 |
47 Don't worry about the "Skipping something: Here's why." lines at startup. DM | 47 Don't worry about the "Skipping something: Here's why." lines at startup. DM |
48 supports many test configurations, which are not all appropriate for all | 48 supports many test configurations, which are not all appropriate for all |
49 machines. These lines are a sort of FYI, mostly in case DM can't run some | 49 machines. These lines are a sort of FYI, mostly in case DM can't run some |
50 configuration you might be expecting it to run. | 50 configuration you might be expecting it to run. |
51 | 51 |
| 52 Don't worry about the "skps: Couldn't read skps." messages either, you won't |
| 53 have those by default and can do without them. If you wish to test with them |
| 54 too, you can [download them separately](https://skia.org/dev/testing/skps). |
| 55 |
52 The next line is an overview of the work DM is about to do. | 56 The next line is an overview of the work DM is about to do. |
53 ~~~ | 57 ~~~ |
54 492 srcs * 3 sinks + 382 tests == 1858 tasks | 58 492 srcs * 3 sinks + 382 tests == 1858 tasks |
55 ~~~ | 59 ~~~ |
56 | 60 |
57 DM has found 382 unit tests (code linked in from tests/), and 492 other drawing | 61 DM has found 382 unit tests (code linked in from tests/), and 492 other drawing |
58 sources. These drawing sources may be GM integration tests (code linked in | 62 sources. These drawing sources may be GM integration tests (code linked in |
59 from gm/), image files (from `--images`, which defaults to "resources") or .skp | 63 from gm/), image files (from `--images`, which defaults to "resources") or .skp |
60 files (from `--skps`, which defaults to "skps"). You can control the types of | 64 files (from `--skps`, which defaults to "skps"). You can control the types of |
61 sources DM will use with `--src` (default, "tests gm image skp"). | 65 sources DM will use with `--src` (default, "tests gm image skp"). |
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
177 That's the basics of DM. DM supports many other modes and flags. Here are a | 181 That's the basics of DM. DM supports many other modes and flags. Here are a |
178 few examples you might find handy. | 182 few examples you might find handy. |
179 ~~~ | 183 ~~~ |
180 $ out/Debug/dm --help # Print all flags, their defaults, and a brief expl
anation of each. | 184 $ out/Debug/dm --help # Print all flags, their defaults, and a brief expl
anation of each. |
181 $ out/Debug/dm --src tests # Run only unit tests. | 185 $ out/Debug/dm --src tests # Run only unit tests. |
182 $ out/Debug/dm --nocpu # Test only GPU-backed work. | 186 $ out/Debug/dm --nocpu # Test only GPU-backed work. |
183 $ out/Debug/dm --nogpu # Test only CPU-backed work. | 187 $ out/Debug/dm --nogpu # Test only CPU-backed work. |
184 $ out/Debug/dm --match blur # Run only work with "blur" in its name. | 188 $ out/Debug/dm --match blur # Run only work with "blur" in its name. |
185 $ out/Debug/dm --dryRun # Don't really do anything, just print out what we'
d do. | 189 $ out/Debug/dm --dryRun # Don't really do anything, just print out what we'
d do. |
186 ~~~ | 190 ~~~ |
OLD | NEW |