欢迎访问宙启技术站
智能推送

在TestCase中使用assertNotEqual()方法进行不等比较

发布时间:2023-12-26 04:52:27

在编写测试用例时,我们经常会使用断言(assert)语句来验证程序的正确性。其中,assertEqual()方法用于验证两个值是否相等。而assertNotEqual()方法则是它的相反操作,用于验证两个值是否不相等。

assertNotEqual()方法的语法如下:

assertNotEqual(value1, value2, msg=None)

其中,value1和value2是要进行比较的两个值,msg是可选参数,用于在断言失败时显示的错误信息。

下面我们来看一个例子,演示如何在测试用例中使用assertNotEqual()方法。

假设我们有一个名为Calculator的类,它有两个方法:add()和multiply()。我们需要编写测试用例来验证这两个方法的正确性。

class Calculator:
    def add(self, a, b):
        return a + b

    def multiply(self, a, b):
        return a * b

import unittest

class CalculatorTest(unittest.TestCase):
    def setUp(self):
        self.calculator = Calculator()

    def test_add(self):
        result = self.calculator.add(2, 3)
        self.assertNotEqual(result, 5, "Addition failed")

    def test_multiply(self):
        result = self.calculator.multiply(2, 3)
        self.assertNotEqual(result, 6, "Multiplication failed")

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

在上面的例子中,我们定义了一个Calculator类,其中有两个方法:add()用于返回两个数字的和,multiply()用于返回两个数字的积。然后,我们编写了一个名为CalculatorTest的测试类,继承自unittest.TestCase。在测试类中,我们使用setUp()方法来实例化Calculator类的一个对象,以便在每个测试方法中可以直接使用。

接下来,我们编写了两个测试方法:test_add()和test_multiply()。在这两个方法中,我们调用Calculator对象的add()和multiply()方法,分别传入两个数字作为参数。然后,使用assertNotEqual()方法来检查得到的结果是否与我们预期的结果不相等。如果断言失败,将会显示在msg参数中指定的错误信息。

最后,我们使用unittest.main()来运行测试用例。