Can one do automated testing with a System Extension? (And if so, how?)

In particular, network extensions, which need to be installed/activated by the containing app. I'm not particularly great at GUI stuff, so maybe there's a way one can simulate/automate that part?

I'm assuming CI testing, presumably done with VMs being created on the fly to build & test. (I admit a historical failure on unit testing for my code, but most of that has historically been kernel code. I'm trying to do better!)

I again apologise for my obvious ignorance at some of this.

Good question. Since there are some system prompts involved here outside of the context of your container app or Network System Extension then I am assuming that at least a portion of this testing will still need to be done live. Other pieces of Network Extension may be able to be tested if there is static functions, so my first take is that this would most likely be a hybrid approach here. The first for all of the automated testing that needs to be done. The next would be for the live testing sequences that would need to be done.

Matt Eaton
DTS Engineering, CoreOS
meaton3@apple.com

Well, part of my uncertainty there was, how do I unit-test the methods that are supposed to be delegates of system APIs? As an example, handleNewFlow. I'm guessing that won't particularly be doable? Although since the data going back and forth is actual data, not IP packets, that makes writing tests for those easier. 😄

Can one do automated testing with a System Extension? (And if so, how?)
 
 
Q