一、相同处理过程,不同参数设置
# 版本:v2.1_参数化设置_相同处理过程,不同参数
# 描述:常量正常异常用户登录
import pytest
from selenium import webdriver
# 1、创建测试类
class Test_Django_Login():
# 2、创建测试方法
# 正常登录测试方法:用户名不存在
# 登录初始化
def setup_method(self):
self.url="http://testplt.share.atstudy.com/admin/login/?next=/admin/"
self.driver=webdriver.Chrome()
self.driver.get(self.url)
# 正常登录测试方法
@pytest.mark.parametrize('umame,pwd,state',(["atstudy","51testing",1],["atstudy1","51testing",0]))
def test_login_01(self,umame,pwd,state):
self.driver.find_element_by_name('username').send_keys(umame)
self.driver.find_element_by_name('password').send_keys(pwd)
self.driver.find_element_by_xpath('//*[@id="login-form"]/div[3]/input').click()
# 统一检查点
result=self.driver.current_url
if state==1:
assert result!=self.url
else:
assert result==self.url
二、不同处理,不同参数设置
# 版本:v2.2_参数化设置_不同处理过程,不同参数
# 描述:常量正常异常用户登录
import pytest
from selenium import webdriver
# 1、创建测试类
class Test_Django_Login():
# 2、创建测试方法
# 正常登录测试方法:用户名不存在
# 登录初始化
def setup_method(self):
self.url="http://testplt.share.atstudy.com/admin/login/?next=/admin/"
self.driver=webdriver.Chrome()
self.driver.get(self.url)
@pytest.mark.parametrize('umame,pwd,',(["atstudy","51testing"],["atstudy1","51testing"]))
# 异常登录测试方法
def test_login_02(self,umame,pwd):
self.driver.find_element_by_name('username').send_keys(umame)
self.driver.find_element_by_name('password').send_keys(pwd)
self.driver.find_element_by_xpath('//*[@id="login-form"]/div[3]/input').click()
# 检查点
# ************************************
# 异常处理方法1通过try-except进行异常处理
try:
result=self.driver.find_element_by_xpath('//*[@id="content-main"]/div/table/caption/a').text
print(result)
# 3、通过断言进行判断
assert result=="测试平台"
except Exception as e:
print(e)
result= self.driver.find_element_by_xpath('//*[@id="content"]/p').text
# 断言:包含对比
assert "请输入" in result