繁体   English   中英

Python unittest 仅运行第一个测试而不运行其他测试

[英]Python unittest only running the first test and not the others

我是单元测试的新手,并试图为我的代码编写测试。 在我的测试文件中,我定义了一个测试 class 并对我的文件进行了两个小测试。 但是,当我运行文件时,只运行第一个测试。

此外,我从中导入测试的代码在与我正在测试的函数不同的函数中生成一些图,并且这些图是在现在运行测试之前生成的。

有没有办法我只能运行测试,而没有我正在导入要从运行中测试的函数的文件?

这是我用于测试 class 的代码:

import unittest
from Expense import set_day_of_the_week
from Expense import add_two_expenses


class Heart_Rate_Model_Tests(unittest.TestCase):  

    def test_assign_initial_values(self):
        day_returned = set_day_of_the_week('Monday')
        self.assertEqual(day_return, 'Monday')


    def test_add_two_expense(self):
        food_expense = 12
        drink_expense = 5
        expense_sum = add_two_expense(food_expense, drink_expense)
        self.assertEqual(17, expense_sum) 

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

测试得到的output为:

Ran 1 test in 0.001s
OK

我对第一个测试进行了更改以使其失败,但它确实失败了,因此我确定这是唯一正在运行的测试,但可以看到对其所做的更改

编写一个新的测试文件已经解决了这个问题。 我仍然不确定它是什么,我假设这是我这边的配置错误,如果将来有人遇到类似问题,请留在这里

对于将来遇到相同问题的每个人:检查您的编译配置。 单击“运行”时,可能只选择了一项特定测试。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM