pycharm通过数据驱动输入“存放地点名称”和“备注”;通过xpath方法定位并点击“保存”按钮;\定位并获取提示信息文字,通过assertEqual断言方法来验证预期结果和实际结果是否一致;
时间: 2023-12-14 18:02:38 浏览: 96
以下是示例代码:
```python
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import unittest
class TestSaveLocation(unittest.TestCase):
def setUp(self):
self.driver = webdriver.Chrome()
self.driver.maximize_window()
self.driver.get("https://example.com")
def test_save_location(self):
# 输入存放地点名称和备注
location_name = "仓库A"
note = "存放衣服"
location_name_input = self.driver.find_element_by_xpath("//input[@name='location_name']")
location_name_input.send_keys(location_name)
note_input = self.driver.find_element_by_xpath("//textarea[@name='note']")
note_input.send_keys(note)
# 点击保存按钮
save_button = self.driver.find_element_by_xpath("//button[@class='save-button']")
save_button.click()
# 获取提示信息文字并断言
WebDriverWait(self.driver, 10).until(EC.visibility_of_element_located((By.XPATH, "//div[@class='message']")))
message = self.driver.find_element_by_xpath("//div[@class='message']").text
expected_message = "成功保存地点"
self.assertEqual(message, expected_message)
def tearDown(self):
self.driver.quit()
if __name__ == "__main__":
unittest.main()
```
在这个示例代码中,我们使用了unittest框架来管理测试用例和断言。setUp()方法在每个测试用例执行前会被调用,用来初始化webdriver和打开测试页面。test_save_location()方法是一个测试用例,其中我们使用xpath定位输入框和按钮元素,然后输入数据、点击保存按钮、获取提示信息文字并进行断言。tearDown()方法在每个测试用例执行后会被调用,用来关闭webdriver。
在实际测试中,我们可以根据需要修改存放地点名称和备注的值,以及修改预期的提示信息文字。同时,如果页面中的元素定位发生变化,我们需要修改xpath表达式来保证测试用例能够正常运行。
阅读全文