Zoozzzz 2022-08-22 20:20 采纳率: 100%
浏览 21
已结题

Python测试函数运行结果与预期不符

问题遇到的现象和发生背景

检测里引用的原函数结果和预期不符,不知道为什么结果会多出来一个b

import unittest
from ddt import ddt,data,unpack
def city(city,country,code=''):
    if code:
        a=f'{city} {code} {country}'
        print(a)
    else:
        a = f'{city} {country}'
        print(a)
    return a
@ddt
class CeShi(unittest.TestCase):
    @data(['a','b'])
    @unpack
    def test_1(self,a,b,c=None):
        if c:
            a=f'{a} {c} {b}'
            b=city(a,b,c)
            self.assertEqual(a,b)
        else:
            a=f'{a} {b}'
            b=city(a,b)
            self.assertEqual(a,b)

if __name__ == '__main__':
    unittest.main()
运行结果及报错内容

预期:a b
实际:a b b

我想要达到的结果

预期:a b
实际:a b

  • 写回答

1条回答 默认 最新

  • Taverry 2022-08-22 20:50
    关注

    这里换一下其他变量

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 8月31日
  • 已采纳回答 8月23日
  • 创建了问题 8月22日