Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法理解如何使用unittest模块在python中编写工作日的测试用例_Python_Unit Testing_Python Unittest_Dayofweek - Fatal编程技术网

无法理解如何使用unittest模块在python中编写工作日的测试用例

无法理解如何使用unittest模块在python中编写工作日的测试用例,python,unit-testing,python-unittest,dayofweek,Python,Unit Testing,Python Unittest,Dayofweek,我在python中有一个函数,它将weekday作为一个参数,并在成功的weekday返回一个int,我是python unittesting的新手,我想知道如何为它编写unittest用例。下面是函数: def dayNameFromWeekday(weekday): if weekday == "Monday": return 0 if weekday == "Tuesday": return 1 if weekday == "Wedn

我在python中有一个函数,它将weekday作为一个参数,并在成功的weekday返回一个int,我是python unittesting的新手,我想知道如何为它编写unittest用例。下面是函数:

def dayNameFromWeekday(weekday):
    if weekday == "Monday":
        return 0
    if weekday == "Tuesday":
        return 1
    if weekday == "Wednesday":
        return 2
    if weekday == "Thursday":
        return 3
    if weekday == "Friday":
        return 4
    if weekday == "Saturday":
        return 5
    if weekday == "Sunday":
        return 6
这是测试文件

class Utils(unittest.TestCase):
    def test_dayNameFromWeekday(self, weekday):
        if weekday == "Monday":
            return 0
        elif weekday == "Tuesday":
            return 1
        elif weekday == "Wednesday":
            return 2
        elif weekday == "Thursday":
            return 3
        elif weekday == "Friday":
            return 4
        elif weekday == "Saturday":
            return 5
        elif weekday == "Sunday":
            return 6
        else:
            return -1  # Any error message

    res = self.test_dayNameFromWeekday("Monday")
我不知道如何为这个函数编写测试用例,请告诉我unittest python的工作方式。

以下是解决方案:

import unittest
class Utils(unittest.TestCase):
    def test_dayNameFromWeekday(self, weekday):
        if weekday == "Monday":
            return 0
        elif weekday == "Tuesday":
            return 1
        elif weekday == "Wednesday":
            return 2
        elif weekday == "Thursday":
            return 3
        elif weekday == "Friday":
            return 4
        elif weekday == "Saturday":
            return 5
        elif weekday == "Sunday":
            return 6
        else:
            return -1  # Any error message
    def runTest(self):
        res = self.test_dayNameFromWeekday("Monday")
        print(res)

res = Utils()
res.run()

如果我在名为test_dayname fromWeekday(self)的函数中对测试文件使用此代码,则会出现类似于weekday not defined(未定义weekday)的错误。除此之外,是否有方法使用assertEqual语句编写测试用例?@Cerrical_刺客您编写了错误的函数名。它应该是
test\u dayname fromWeekday(self,weekday)
@cerebral\u刺客将函数名更改为
def test\u dayname fromWeekday(self,weekday):
并告诉我是的,我尝试过,但这次它抛出了一个类型错误:test\u dayname fromWeekday()缺少1个必需的位置参数:“weekday”@cerebral_刺客检查我的更新代码。跟我做的一样