Infrastructure test is difficult, to both write and run. Infrastructure test dealing with 2 most difficult notions, consumer and side effect.
As written in previous post, programming is about 2 things, producer/consumer of action/data, infrastructure test is difficult in result assertion, the test at the surface will be easier(DNS), but getting more difficult when it goes to deeper(subnet). For example the infrastructure must spawn instance in private subnet, result verification should assert that a request cannot penetrate to the instance, how can it be sure that when a request is blocked, it is actually blocked by subnet.
Infrastructure creates side effects, it is difficult to test because it is not repeatable, or expensive(resource or time) to repeat.