一.根据场景设计场景用例
1 .一条一条的自动化用例编写
(1)登录场景
(2)登录==用户管理
(3)登录==系统管理
(4)登录==退出
案例:
登录场景1
from selenium import webdriver #导入selenium模块中的webdriver from time import * dx=webdriver.Chrome() #创建一个驱动谷歌浏览器的对象 dx.get("http://49.233.201.254:8080/cms/manage/login.do") #通过get打开页面 sleep(2) #输入账号 dx.find_element_by_id("userAccount").send_keys("admin") sleep(2) # 输入密码 dx.find_element_by_id("loginPwd").send_keys("123456") sleep(2) #点击登录 dx.find_element_by_id('loginBtn').click()
案例2:登录--用户管理
#登录==用户管理 from selenium import webdriver #导入selenium模块中的webdriver from time import * dx=webdriver.Chrome() #创建一个驱动谷歌浏览器的对象 dx.get("http://49.233.201.254:8080/cms/manage/login.do") #通过get打开页面 sleep(2) #输入账号 dx.find_element_by_id("userAccount").send_keys("admin") sleep(2) # 输入密码 dx.find_element_by_id("loginPwd").send_keys("123456") sleep(2) #点击登录 dx.find_element_by_id('loginBtn').click() sleep(2) # 点击用户管理 dx.find_element_by_xpath('//*[@id="menu-user"]/dt/i').click()
案例3:登录--系统管理
#登录==系统管理 from selenium import webdriver #导入selenium模块中的webdriver from time import * dx=webdriver.Chrome() #创建一个驱动谷歌浏览器的对象 dx.get("http://49.233.201.254:8080/cms/manage/login.do") #通过get打开页面 sleep(2) #输入账号 dx.find_element_by_id("userAccount").send_keys("admin") sleep(2) # 输入密码 dx.find_element_by_id("loginPwd").send_keys("123456") sleep(2) #点击登录 dx.find_element_by_id('loginBtn').click() sleep(2) # 点击系统管理 dx.find_element_by_xpath('//*[@id="menu-system"]/dt/i').click()
案例4:
#登录==退出 from selenium import webdriver #导入selenium模块中的webdriver from time import * dx=webdriver.Chrome() #创建一个驱动谷歌浏览器的对象 dx.get("http://49.233.201.254:8080/cms/manage/login.do") #通过get打开页面 sleep(2) #输入账号 dx.find_element_by_id("userAccount").send_keys("admin") sleep(2) # 输入密码 dx.find_element_by_id("loginPwd").send_keys("123456") sleep(2) #点击登录 dx.find_element_by_id('loginBtn').click() sleep(2) #退出 dx.find_element_by_xpath("/html/body/header/span[2]/a/i").click()
二.封装用例(将用例放在每一个函数中)
from selenium import webdriver #导入selenium模块中的webdriver from time import * class Cms(object):def __init__(self):passdef dl(self):dx=webdriver.Chrome() #创建一个驱动谷歌浏览器的对象dx.get("http://49.233.201.254:8080/cms/manage/login.do") #通过get打开页面sleep(2)#输入账号dx.find_element_by_id("userAccount").send_keys("admin")sleep(2)# 输入密码dx.find_element_by_id("loginPwd").send_keys("123456")sleep(2)#点击登录dx.find_element_by_id('loginBtn').click()def yhgl(self):dx=webdriver.Chrome() #创建一个驱动谷歌浏览器的对象dx.get("http://49.233.201.254:8080/cms/manage/login.do") #通过get打开页面sleep(2)#输入账号dx.find_element_by_id("userAccount").send_keys("admin")sleep(2)# 输入密码dx.find_element_by_id("loginPwd").send_keys("123456")sleep(2)#点击登录dx.find_element_by_id('loginBtn').click()sleep(2)# 点击用户管理dx.find_element_by_xpath('//*[@id="menu-user"]/dt/i').click()def xtgl(self):dx=webdriver.Chrome() #创建一个驱动谷歌浏览器的对象dx.get("http://49.233.201.254:8080/cms/manage/login.do") #通过get打开页面sleep(2)#输入账号dx.find_element_by_id("userAccount").send_keys("admin")sleep(2)# 输入密码dx.find_element_by_id("loginPwd").send_keys("123456")sleep(2)#点击登录dx.find_element_by_id('loginBtn').click()sleep(2)# 点击系统管理dx.find_element_by_xpath('//*[@id="menu-system"]/dt/i').click()def quit(self):dx=webdriver.Chrome() #创建一个驱动谷歌浏览器的对象dx.get("http://49.233.201.254:8080/cms/manage/login.do") #通过get打开页面sleep(2)#输入账号dx.find_element_by_id("userAccount").send_keys("admin")sleep(2)# 输入密码dx.find_element_by_id("loginPwd").send_keys("123456")sleep(2)#点击登录dx.find_element_by_id('loginBtn').click()sleep(2)#退出dx.find_element_by_xpath("/html/body/header/span[2]/a/i").click()if __name__ == '__main__':ldx=Cms()# ldx.dl()# ldx.yhgl()# ldx.quit()ldx.xtgl()
三.优化用例
from selenium import webdriver #导入selenium模块中的webdriver from time import * class Cms(object):def __init__(self):passdef dl(self):self.dx=webdriver.Chrome() #创建一个驱动谷歌浏览器的对象self.dx.get("http://49.233.201.254:8080/cms/manage/login.do") #通过get打开页面sleep(2)#输入账号self.dx.find_element_by_id("userAccount").send_keys("admin")sleep(2)# 输入密码self.dx.find_element_by_id("loginPwd").send_keys("123456")sleep(2)#点击登录self.dx.find_element_by_id('loginBtn').click()def yhgl(self):self.dl() #调用登录sleep(2)# 点击用户管理self.dx.find_element_by_xpath('//*[@id="menu-user"]/dt/i').click()def xtgl(self):self.dl()# 点击系统管理sleep(2)self.dx.find_element_by_xpath('//*[@id="menu-system"]/dt/i').click()def quit(self):self.dl()#退出sleep(2)self.dx.find_element_by_xpath("/html/body/header/span[2]/a/i").click() if __name__ == '__main__':ldx=Cms()# ldx.dl()# ldx.yhgl() ldx.quit()# ldx.xtgl()
四.将登录写在构造函数中
from selenium import webdriver #导入selenium模块中的webdriver from time import * class Cms(object):def __init__(self):self.dx = webdriver.Chrome() # 创建一个驱动谷歌浏览器的对象self.dx.get("http://49.233.201.254:8080/cms/manage/login.do") # 通过get打开页面sleep(2)#输入账号self.dx.find_element_by_id("userAccount").send_keys("admin")sleep(2)# 输入密码self.dx.find_element_by_id("loginPwd").send_keys("123456")sleep(2)#点击登录self.dx.find_element_by_id('loginBtn').click()def yhgl(self):sleep(2)# 点击用户管理self.dx.find_element_by_xpath('//*[@id="menu-user"]/dt/i').click()def xtgl(self):# 点击系统管理sleep(2)self.dx.find_element_by_xpath('//*[@id="menu-system"]/dt/i').click()def quit(self):#退出sleep(2)self.dx.find_element_by_xpath("/html/body/header/span[2]/a/i").click() if __name__ == '__main__':ldx=Cms()# ldx.yhgl()# ldx.quit()ldx.xtgl()