why test an interface