You could use Python to unittest a Python module written in C++ I
suppose. I guess that would probably work. I suspect that you would
get better/more accurate/reliable results by writing your tests in C+
+ as well though.
Re: Is it possible to use python to unit test C++ code?
sylcheung@gmail .com wrote:[color=blue]
> Is it possible to use python to unit test C++ code? If yes, is there
> any example available?
>[/color]
If I had to use python to test C++ code, I'd use the Boost python
library: http://www.boost.org/libs/python/doc/ to expose my C++
classes, and write the unittests in python after importing the wrapped
C++ code.
Note, you did ask if it was possible. Is it advisable? That's another
question.
Re: Is it possible to use python to unit test C++ code?
sylcheung> Is it possible to use python to unit test C++ code? If yes,
sylcheung> is there any example available?
Yes, it's quite possible. Some people even do it. ;-) As for examples, take
a look at Python's own test suite. Much of the code it contains actually
tests modules written in C, which is near enough to C++ for our purposes.
For example, consider that the math module is a thin wrapper around bits of
standard C89 math functions. The test_math.py script then exercises that
code.
So, you'll have to wrap your C++ library to make it available in Python
(check out SWIG and/or Boost and/or Python's Extending and Embedding
documentation), then write test cases. For that, look at the unittest and
doctest modules that come with Python as well as the third-party py.test
package.
Re: Is it possible to use python to unit test C++ code?
samuel> Thanks. When I use python to unit test my c++ code. Do I need
samuel> only the .o file? or I need the .c/.h files of the c++ code? If
samuel> the input is .c/.h files, how can I compile it for unit testing
samuel> purposes?
Your wrapper module will need the header files from your C++ library and it
will by dynamically linked against the library's .so (or .dll).
Comment