如何通过数据驱动去读取一个登录页面的TXT文件而进行自动化测试呢?
时间: 2024-04-04 21:32:42 浏览: 11
要通过数据驱动去读取一个登录页面的 TXT 文件并进行自动化测试,可以按照以下步骤:
1. 创建一个 TXT 文件,将需要测试的多组用户名和密码写入文件中,每行一个组。
2. 在测试脚本中使用 Python 内置的 open 函数打开 TXT 文件,并逐行读取其中的数据。
3. 对于每一组用户名和密码,执行登录操作,并在登录后检查登录是否成功。
4. 可以使用 Python 的 unittest 模块来组织和运行测试用例。
下面是一个示例代码:
```python
import unittest
from selenium import webdriver
class LoginTests(unittest.TestCase):
def setUp(self):
self.driver = webdriver.Chrome()
self.driver.get("http://example.com/login")
def test_login(self):
with open('login_data.txt', 'r') as file:
for line in file:
# 分离用户名和密码
username, password = line.strip().split(',')
# 输入用户名和密码
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("submit").click()
# 检查是否登录成功
self.assertTrue("Welcome" in self.driver.page_source)
# 清空输入框
self.driver.find_element_by_id("username").clear()
self.driver.find_element_by_id("password").clear()
def tearDown(self):
self.driver.quit()
if __name__ == '__main__':
unittest.main()
```
在这个示例代码中,我们假设 TXT 文件的格式为 `username,password`,每行一个组。在每个测试用例中,我们使用 `open` 函数打开 TXT 文件,逐行读取其中的数据,并分离用户名和密码。然后,我们使用 Selenium WebDriver 输入用户名和密码,并点击登录按钮,检查登录是否成功。最后,我们清空输入框,以便进行下一次测试。
可以使用 unittest 模块来组织和运行测试用例。执行此代码后,将自动运行测试用例,并对每个测试用例使用不同的用户名和密码进行测试。