写一段通过ddt+selenium完成的简单的数据驱动的测试
时间: 2024-04-05 20:30:12 浏览: 57
好的,下面是一个通过 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
```
阅读全文