Comment Re:Sysops writing unit tests? (Score 1) 394
I think the point is more to write unit tests of *your own* stuff.
I project managed a huge core network upgrade at our company. As we put together the plan, we had to take everything down in layers and then once the network was swapped out, bring it all back up. So the plan the various admin teams presented me with were "Storage team brings up the SAN and filers, then the UNIX team brings up all their systems, then the Windows team brings theirs up, then app admin teams bring up app servers and whatnot, and then after we've done all that for three hours, we'll have end users test. If their apps don't work, then something went wrong."
I said, "Shouldn't you test your own layer yourself? You know, before inflicting it upon someone else?"
Their response: "Huh?"
So we had to work together for a while, and finally all the ops teams had the equivalent of "unit tests." All the unix boxes would do a many-to-many ping sweep to make sure every box had connectivity to every other box, for example. The storage team tested that you could connect to the storage, and looked at NFS error rates. It took a bit to get to this point because of an odd embedded opinion that "testing is for other people. Admins don't test." Which I think we might recognize as not being all that helpful.
So yes, operations folks should write unit tests. According to the DevOps "infrastructure is code" belief, your new UNIX build is just like some guy's Java code, and should have unit tests (and be in source control and other such best practices).
I project managed a huge core network upgrade at our company. As we put together the plan, we had to take everything down in layers and then once the network was swapped out, bring it all back up. So the plan the various admin teams presented me with were "Storage team brings up the SAN and filers, then the UNIX team brings up all their systems, then the Windows team brings theirs up, then app admin teams bring up app servers and whatnot, and then after we've done all that for three hours, we'll have end users test. If their apps don't work, then something went wrong."
I said, "Shouldn't you test your own layer yourself? You know, before inflicting it upon someone else?"
Their response: "Huh?"
So we had to work together for a while, and finally all the ops teams had the equivalent of "unit tests." All the unix boxes would do a many-to-many ping sweep to make sure every box had connectivity to every other box, for example. The storage team tested that you could connect to the storage, and looked at NFS error rates. It took a bit to get to this point because of an odd embedded opinion that "testing is for other people. Admins don't test." Which I think we might recognize as not being all that helpful.
So yes, operations folks should write unit tests. According to the DevOps "infrastructure is code" belief, your new UNIX build is just like some guy's Java code, and should have unit tests (and be in source control and other such best practices).