2015-04-02 95 views
0

我写的测试用例这样的结构:如何正确运行unittest测试用例?

import unittest 
.... 

url = TestObjects.host #url host 

class AuthInitial(unittest.TestCase): 
    def setUp(self): 
     self.driver = TestObjects.driver #start browser 

    def test_name(self): 
     some test_logic in browser 

    def tearDown(self): 
     self.assertEqual() 
     self.driver.close() 


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

当我运行通过nosetests命令测试我得到一个错误(winerror-10061)

如何正确地开始测试? 每次我需要关闭并打开浏览器吗?

+1

出现此错误后,问题与测试本身无关,但与您的代码逻辑无关。此错误与连接有关。 http://stackoverflow.com/questions/13773024/python-connectin-refused-10061 – 2015-04-02 16:07:54

回答

1

所以,setUp()和tearDown()方法分别在每个不同的测试函数之前和之后被调用。在这种情况下,您有其中一个(test_name)。如果您没有需要创建和销毁的内容来测试您的代码,那么很可能您只需将代码片段包含在测试函数中。

这就是说,让我们看看你有的测试。现在test_name函数没有做任何事情,而是在tearDown方法中有self.assertEqual()。您应该将self.asserEqual()移动到test_name函数中。在此之后,您需要为您要测试的断言提供一些论证:

self.asserEqual(testobject.property, "Foo") 

例如。你需要传递一些东西,并将其与你的期望进行比较。在这种特殊情况下,我看到了testobject.property是否与Foo相同。如果是这种情况,它会继续下去。如果不是,单元测试框架将打印出一份评论他们不相同的报告。

希望有帮助。

+0

谢谢,得到了一个点 – Leo 2015-04-03 07:34:12