I think the nature of this command induces a white box test.  When you run the docker inspect command, the command itself points you to these .json files.  This leads me to believe that these files are for the user to look at, as docker makes no attempt to obfuscate container configs. Knowing several SREs who use docker at companies with very large deployments, I know that if if an open source program is going to give them config files in plain-text easily available on their file system, they're going to utilize them.  I wouldn't want to limit the effectiveness of a group of tests if the users of the actual program aren't going to.

Secondly, the only purpose of the inspect command is to aggregate these given config files into one place and display all the information as a whole.  The json format is very stable and well known, I don't see that changing at all.  What could change is the way it is displayed.  At which point our tests would break at the parse_cli_output() - and it should break because this would be a major change to this feature.  The fix would be in that function, and wouldn't require a lot of changes all over the test class because once we're outside of the parsing, we're only comparing python dictionary against python dictionary.