canmove, Confirmed users
2,041
edits
Line 90: | Line 90: | ||
* Do share ownership of anything that is not a test detail, including (and especially) almost any particular task done in setup and cleanup. Know your level of [[#Abstraction|abstraction]]. | * Do share ownership of anything that is not a test detail, including (and especially) almost any particular task done in setup and cleanup. Know your level of [[#Abstraction|abstraction]]. | ||
* Sometimes setup/cleanup needs a function and the test needs a macro that do the same thing. Sharing code for these is risky. It's usually better to let setup/cleanup use a highly robust function, preferably without involving UI, that you can change at will to make faster or more robust later without risking test coverage. | * Sometimes setup/cleanup needs a function and the test needs a macro that do the same thing. Sharing code for these is risky. It's usually better to let setup/cleanup use a highly robust function, preferably without involving UI, that you can change at will to make faster or more robust later without risking test coverage. | ||
* Balance SPOT with your organizational structure. If it's not natural for two groups to communicate, those groups should not have shared ownership of code. | * Balance SPOT with your organizational structure. If it's not natural for two groups to communicate, those groups should not have shared ownership of code. Either refactor shared code into a module with single ownership and consumed by the others as a version-pinned library, or both groups should maintain their own copies. SPOT only helps when you all talk. Keep in mind more than a few people needing to talk to make a given change is an [http://en.wikipedia.org/wiki/The_Mythical_Man-Month#The_mythical_man-month antipattern]. | ||
= Test Runs = | = Test Runs = |