写一个最简单的DDT的测试案例,并调用测试他
时间: 2024-03-14 10:46:48 浏览: 21
好的,以下是一个最简单的DDT测试案例,并调用测试的示例:
```python
import unittest
class TestMath(unittest.TestCase):
def test_addition(self):
test_cases = [
(1, 2, 3),
(0, 0, 0),
(-1, 1, 0),
(0.1, 0.2, 0.3)
]
for a, b, expected in test_cases:
result = a + b
self.assertEqual(result, expected)
if __name__ == '__main__':
unittest.main()
```
这个测试案例使用了unittest框架,并测试了加法运算。我们创建了一个包含四个测试用例的列表,每个测试用例都是一个元组,包含两个加数和一个预期结果。我们使用for循环遍历测试用例,并计算实际结果。然后,我们使用assertEqual()函数检查实际结果是否与预期结果相等。如果测试通过,则不会有任何输出,否则会输出失败消息,以便我们可以检查问题并进行修复。
要运行这个测试案例,我们可以在命令行中执行以下命令:
```
python test_math.py
```
这会自动运行测试,并输出测试结果。
相关问题
写一个最简单的DDT的测试案例
假设你正在测试一个简单的登录页面,以下是一个最简单的DDT测试案例:
```python
import unittest
class TestLogin(unittest.TestCase):
def test_valid_login(self):
username = "testuser"
password = "testpass"
expected_result = "Welcome, testuser!"
# simulate login process with valid credentials
result = login(username, password)
# check if the result matches the expected result
self.assertEqual(result, expected_result)
def test_invalid_login(self):
username = "testuser"
password = "wrongpass"
expected_result = "Invalid username or password."
# simulate login process with invalid credentials
result = login(username, password)
# check if the result matches the expected result
self.assertEqual(result, expected_result)
if __name__ == '__main__':
unittest.main()
```
这个测试案例使用了unittest框架,测试了两个情况:使用有效的用户名和密码登录,以及使用无效的用户名和密码登录。在每个测试中,我们模拟了登录过程,并检查实际结果是否与预期结果匹配。如果测试通过,则不会有任何输出,否则会输出失败消息,以便我们可以检查问题并进行修复。
写一段通过ddt+selenium完成的简单的数据驱动的测试
好的,下面是一个通过 ddt+selenium 完成的简单的数据驱动的测试例子:
```python
import unittest
from ddt import ddt, data, unpack
from selenium import webdriver
@ddt
class TestLogin(unittest.TestCase):
@classmethod
def setUpClass(cls):
cls.driver = webdriver.Chrome()
cls.driver.get('http://www.example.com')
cls.driver.maximize_window()
@classmethod
def tearDownClass(cls):
cls.driver.quit()
@data(('username1', 'password1'), ('username2', 'password2'), ('username3', 'password3'))
@unpack
def test_login(self, username, password):
# 输入用户名和密码,并登录
self.driver.find_element_by_id('username').send_keys(username)
self.driver.find_element_by_id('password').send_keys(password)
self.driver.find_element_by_id('login-btn').click()
# 验证登录是否成功
self.assertTrue('Welcome' in self.driver.page_source)
```
在这个例子中,我们首先通过 `setUpClass()` 方法打开 Chrome 浏览器并访问指定的网站,并在 `tearDownClass()` 方法中关闭浏览器。然后,我们通过 `@data` 和 `@unpack` 装饰器将一组用户名和密码数据传入 `test_login()` 方法中,使用这些数据进行登录,并验证登录是否成功。
注意,为了运行该测试用例,我们还需要安装 ddt 和 selenium 模块。可以使用以下命令进行安装:
```python
pip install ddt
pip install selenium
```