web自动化测试——web自动化实战(八)

测试需求:验证商城的搜索功能

测试用例

用例名称:搜索手机

用例步骤:

1.打开被测页面

2.输入搜索词:手机

3.点击搜索按钮

4.断言:每一个搜索结果,都包含“手机”

import time
import selenium
from selenium import webdriver
from selenium.webdriver.common.by import By

driver=webdriver.Chrome()
driver.get("http://101.34.221.219:8010/") #控制浏览器,访问百度
el_1=driver.find_element(By.XPATH,'//*[@id="search-input"]')  #输入框
el_1.send_keys('手机')  #输入内容
el_2=driver.find_element(By.XPATH,'//*[@id="ai-topsearch"]') #搜索按钮

el_2.click() #点击

# 获取搜索结果
# /html/body/div[4]/div/ul/li[1]/div/p[2]
# /html/body/div[4]/div/ul/li[2]/div/p[2]
# ....
# /html/body/div[4]/div/ul/li[5]/div/p[2]#他们都是小的
# /html/body/div[4]/div/ul/li[1]/div/a/div/p #这个是一个整框
     #定位失败的上一行,进行debuger,我忘了debug这个知识点了
     #需要代码暂停一下
time.sleep(5)
el_list=driver.find_elements(By.XPATH,'/html/body/div[4]/div/ul/li/div/a/div/p')
print(el_list)
assert  len(el_list)==6   #断言:有6个搜索结果
for el in el_list:           #从列表中取出每一个元素
    assert "手机" in el.text  #元素的文本中,包含”手机“
driver.quit()

上面是其中一个用例,那么我们还需要执行一个反例,那现在目前的方法是把这个代码复制下,修改下以下内容,这样就得到一个反例。

import time
import selenium
from selenium import webdriver
from selenium.webdriver.common.by import By

driver=webdriver.Chrome()
driver.get("http://101.34.221.219:8010/") #控制浏览器,访问百度
el_1=driver.find_element(By.XPATH,'//*[@id="search-input"]')  #输入框
el_1.send_keys('连衣裙')  #输入内容
el_2=driver.find_element(By.XPATH,'//*[@id="ai-topsearch"]') #搜索按钮

el_2.click() #点击

# 获取搜索结果
# /html/body/div[4]/div/ul/li[1]/div/p[2]
# /html/body/div[4]/div/ul/li[2]/div/p[2]
# ....
# /html/body/div[4]/div/ul/li[5]/div/p[2]#他们都是小的
# /html/body/div[4]/div/ul/li[1]/div/a/div/p #这个是一个整框
     #定位失败的上一行,进行debuger,我忘了debug这个知识点了
     #需要代码暂停一下
time.sleep(5)
el_list=driver.find_elements(By.XPATH,'/html/body/div[4]/div/ul/li/div/a/div/p')
print(el_list)
assert len(el_list)!==6   #断言:没有6个搜索结果
for el in el_list:           #从列表中取出每一个元素
    assert "手机"  not in el.text  #元素的文本中,包含”手机“
driver.quit()

 问题:用例的相似性较高,而且还要复制代码,而且第二次还进行了浏览器的启动和关闭,每一次启动和关闭大概需要5s钟的时间,所以效率较慢,代码的维护性不好。

1.相似性太高

2.浏览器频繁启动关闭

3.代码维护性不好

 

posted @ 2023-03-12 17:03  小泽的窝  阅读(28)  评论(0编辑  收藏  举报