如何正确运行unittest测试用例?

时间:2015-04-02 14:57:18

标签: python selenium-webdriver nose nosetests python-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 个答案:

答案 0 :(得分:1)

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

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

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

。您需要传递一些内容并将其与您期望的内容进行比较。在这个特殊情况下,我看到testobject.property是否与Foo相同。如果是这种情况,它将继续。如果没有,单元测试框架将打印出一条评论它们不相同的报告。

希望这有帮助。