To run the raster tests and just look for VK errors simply run them with no arguments or use the --gtest_filter=XglRasterTest.<testname> to run just one test. Running with --gtest_list_tests  will name all of the available tests.

The raster tests can be run and the pixel results compared to known good (golden) images generated from previous runs.  To generate golden images, make sure that the tests are rendering as expected, and then run with --save-images.  This will generate .ppm files for all of the tests.  Create a directory called "golden" and "mv *.ppm golden".  When new tests are added to render_tests additional golden images will need to be generated for the new tests.

Then, to run comparing resulting images to the golden images, run with --compare-images.  This too will generate .ppm images for all of the tests and if the image differs from the golden image at all, the test will fail and a <testname>-diff.ppm image will be generated in the same directory as the test images.  So the result image and the diff image will be in the current directory and the golden image will be in the golden directory.  
