It looks like there is a lot of repeated setup code across many zonal_statistics tests, setting up polygon geometries and rasters. It may make sense to move all those tests into their own class or module, where they can more easily share some of those objects.
test_geoprocessing.py is 5700 lines long. Splitting it up may make it easier to read and maintain as well.