在python中使用unittest 完成测试用例,判断姓名列表是否有输入的用户姓名 1、使用测试用例,完成执行测试 2、使用测试套件,添加测试用例,完成执行测试
时间: 2023-06-17 12:04:41 浏览: 199
python单元测试unittest实例详解-电脑资料.pdf
1. 使用测试用例完成执行测试:
```python
import unittest
class TestNameList(unittest.TestCase):
def setUp(self):
self.names = ['Alice', 'Bob', 'Charlie']
def test_name_in_list(self):
name = 'Alice'
self.assertIn(name, self.names)
def test_name_not_in_list(self):
name = 'Dave'
self.assertNotIn(name, self.names)
if __name__ == '__main__':
unittest.main()
```
在上述代码中,我们定义了一个 `TestNameList` 测试类,它继承自 `unittest.TestCase` 类。在该类的 `setUp` 方法中,我们初始化了一个姓名列表。我们还定义了两个测试方法 `test_name_in_list` 和 `test_name_not_in_list`,用于测试输入的用户姓名是否在列表中。在这两个测试方法中,我们使用了 `self.assertIn` 和 `self.assertNotIn` 断言方法,来判断输入的用户名是否在列表中。最后,我们使用 `unittest.main()` 方法运行测试。
2. 使用测试套件完成执行测试:
```python
import unittest
class TestNameList(unittest.TestCase):
def setUp(self):
self.names = ['Alice', 'Bob', 'Charlie']
def test_name_in_list(self):
name = 'Alice'
self.assertIn(name, self.names)
def test_name_not_in_list(self):
name = 'Dave'
self.assertNotIn(name, self.names)
if __name__ == '__main__':
suite = unittest.TestSuite()
suite.addTest(TestNameList('test_name_in_list'))
suite.addTest(TestNameList('test_name_not_in_list'))
runner = unittest.TextTestRunner()
runner.run(suite)
```
在上述代码中,我们首先定义了一个 `TestNameList` 测试类,与前面的例子相同。接着,我们使用 `unittest.TestSuite()` 方法创建一个测试套件。然后,我们使用 `suite.addTest()` 方法,将两个测试用例添加到测试套件中。最后,我们创建一个 `unittest.TextTestRunner()` 对象,并使用 `runner.run()` 方法运行测试套件。
阅读全文