title: Is it acceptable practice to unit-test a program in a different language?
body: <p>I have a static library I created from C++, and would like to test this using a Driver code.</p>
  
  <p>I noticed one of my professors like to do his tests using python, but he simply executes the program (not a library in this case, but an executable) using random test arguments.</p>
  
  <p>I would like to take this approach, but I realized that this is a library and doesn't have a main function; that would mean I should either create a Driver.cpp class, or wrap the library into python using SWIG or boost python.</p>
  
  <p>I’m planning to do the latter because it seems more fun, but logically, I feel that there is going to be more bugs when trying to wrap a library to a different language just to test it, rather than test it in its native language.</p>
  
  <p>Is testing programs in a different language an accepted practice in the real world, or is this bad practice?</p>