如何运行Python实例化类方法

时间:2015-03-07 19:26:47

标签: python class methods command-line instances

运行Python文件的Noob问题实例化类方法: 我想在类TestClass()中运行方法test_method()来验证algorithm()的工作原理。 如何从python命令行运行此代码?

文件名:algo.py

import unittest
import numpy as np
import pandas as pd 
from datetime import datetime

def algorithm(a,b):
    c = a+b
    return c

class TestClass(unittest.TestCase):
    def test_method(self):
        a = np.array(1.1)
        b = np.array(2.2)
        algo_return = algorithm(a,b) 

        self.assertAlmostEqual(algo_return[0], 3.3)

我试过了,

import algo
test_method = algo
TestClass = algo.TestClass()

但第三行产生了结果:

Traceback (most recent call last):
File "/Applications/Wing101.app/Contents/Resources/src/debug/tserver/_sandbox.py", line 1, in <module>
# Used internally for debug sandbox under external interpreter
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/case.py", line 191, in __init__
(self.__class__, methodName))
ValueError: no such test method in <class 'algo.TestClass'>: runTest

我正在使用python2.7,wings101 IDE。

我正在寻找答案(但这不起作用):

import algo
TestClass.test_method()

1 个答案:

答案 0 :(得分:1)

将以下代码添加到您的文件中:

if __name__ == '__main__':
    unittest.main()

然后你就可以将你的文件简单地作为“python algo.py”来运行了,这将运行你的测试。

有关使用Python unittest框架的更多信息,请参阅here