python怎么测试c代码_可以使用基于Python的单元测试框架和跑步者来测试C代码
当然你可以….但是你必须编写一个绑定来调用你的C代码在python(例如
ctypes),并在python写这些测试(这是真的可能和一个简单的方法来做智能测试)
示例:
>写一个虚拟C库.
foolib.c
int my_sum(int , int);
int my_sum(int a , int b);
{
return a + b;
}
>将其编译为共享库:
gcc -shared -Wl,-soname,foolib -o foolib.so -fPIC foolib.c
>用ctypes编写包装器:
foolib_test.py
import ctypes
import unittest
class FooLibTestCase(unittest.TestCase):
def setUp(self):
self.foolib = ctypes.CDLL('/full/path/to/foolib.so')
def test_01a(self):
""" Test in an easy way"""
self.failUnlessEqual(4, foolib.my_sum(2, 2))
然后,当用鼻子运行这个测试时,你应该有一个很好的测试你的C代码:)