完成实战内容,周一对内容进行考核
源码地址: school / nun / LitemallTest · GitLab
实战网址: litemall
实战目标:
- 完成 litemall 项目的web自动化-商品页面的增删改查
- 实现 allure 测试报告展示
- 代码规范、注释清晰
以下二选一完成今天web自动化实战
- 根据test_litemall.py完成后续代码
- 根据test_litemall_po.py完成后续代码
商品查询用例代码
def test_goods_search(self):
# 进入商品列表页面,点击添加按钮
goods_add_button = '//*[text()="添加"]'
self.driver.find_element(By.XPATH, goods_add_button).click()
time.sleep(sleep_sec)
# 输入商品编号
goods_number_input = '.el-input__inner'
goods_number = int(self.nowtime + self.PREFIX_NUM)
self.driver.find_element(By.CSS_SELECTOR, goods_number_input).send_keys(goods_number)
# 输入商品名称
goods_name_input = '//*[text()="商品名称"]/../div/div/input'
goods_name = f"{self.PREFIX_NUM}_{str(self.nowtime)}_商品名称添加"
self.driver.find_element(By.XPATH, goods_name_input).send_keys(goods_name)
# 点击上架按钮
putaway_button = '//*[text()="上架"]'
self.driver.find_element(By.XPATH,putaway_button).click()
# 输入商品名称进行查询
goods_name_search_input = '//*[@placeholder="请输入商品名称"]'
self.driver.find_element(By.XPATH,goods_name_search_input).send_keys(goods_name)
# 点击查询
goods_search_button = '//*[text()="查找"]'
self.driver.find_element(By.XPATH,goods_search_button).click()
time.sleep(sleep_sec)
# 获取所有商品名称
goods_name_col = '.is-center.el-table__cell'
# 显示等待列表元素加载
def wait(driver):
# 编写显示等待的逻辑
# 获取列表元素
goods_name_ele_list = self.driver.find_elements(By.CSS_SELECTOR,goods_name_col)
# 直到元素长度大于逾期值
return len(goods_name_ele_list) > 20
# 显式等待 使用自定义函数
WebDriverWait(self.driver, 5).until(wait)
goods_name_ele_list = self.driver.find_elements(By.CSS_SELECTOR,goods_name_col)
goods_name_text_list = [ge.text for ge in goods_name_ele_list]
assert goods_name in goods_name_text_list
ide快捷键使用:
- 复制粘贴: ctrl + c || ctrl + c
- 撤回: ctrl + z
- 当前搜索: ctrl + f
- 全局搜索: ctrl + shift + f
- 文件名搜索: ctrl + n
- 重构: shift + f6
- 查看文件代码结构: alt + 7
- 注释: ctrl + /
- 多行缩进: tab || shift + tab
- 列编辑: alt + shift + 鼠标左键长按
- 显示建议 /代码提示: alt + enter
- 智能代码补全: ctrl + alt + space
- 查看文件历史改动: show history
- 走读代码: ctrl+鼠标左键 || ctrl + alt + 方向键
- 断言
- F8: 当前代码的下一步
- F7: 代码运行下一步,如果有方法会进去执行
- alt+F8 打印变量、运行方法、修改变量
- 条件断言