selenium+python自动化用例登陆界面模板

python

一、基本逻辑

1.自动填写用户名和密码登录成功后跳转到相应页面

2.验证相应页面的url与给定的url是否一致,如果一致则测试通过,如果不一致则不通过

 

二、以jenkins登陆界面为例,代码如下

 1 from selenium import webdriver

2 import unittest

3 from selenium.webdriver.support.wait import WebDriverWait

4

5 class TestLogin(unittest.TestCase):

6 # 指定浏览器

7 def setUp(self):

8 self.driver = webdriver.Firefox(executable_path="F:\Program Files (x86)\Mozilla Firefox\geckodriver.exe")

9 # 打开url

10 self.driver.get("http://192.168.1.151:8080/login?from=%2F")

11

12 # 登录操作

13 def test_login(self):

14 username = "test001"

15 password = "pass001"

16

17 # 执行登录操作

18 #用户名的定位

19 WebDriverWait(self.driver, 10).until(lambda x: x.find_element_by_id(\'j_username\')).clear()

20 WebDriverWait(self.driver, 10).until(lambda x: x.find_element_by_id(\'j_username\')).send_keys(username)

21 #密码的定位

22 WebDriverWait(self.driver, 10).until(lambda x: x.find_element_by_name(\'j_password\')).clear()

23 WebDriverWait(self.driver, 10).until(lambda x: x.find_element_by_name(\'j_password\')).send_keys(password)

24 # 点击登录

25 self.driver.find_element_by_id("yui-gen1-button").click()

26 # 登录成功断言

27 currUrl = self.driver.current_url

28 print("currUrl"+currUrl)

29 if currUrl == "http://192.168.1.151:8080/":

30 print("success")

31 else:

32 print("failure")

33

34 # 关闭浏览器

35 def tearDown(self):

36 self.driver.quit()

37

38

39 if __name__ == "__main__":

40 unittest.main()

 

三、用例详解

用例主要分为3块:

def setUp(self):函数setUp中,为执行用例前准备操作
def test_login(self):函数test_login中,为用例的具体操作步骤+用例执行后的断言判断操作
def tearDown(self):函数tearDown中,为用例执行完成的还原环境操作


值得一讲的为用户名的定位语句:
WebDriverWait(self.driver, 10).until(lambda x: x.find_element_by_id(\'j_username\')).clear() //找到用户名的值,把值清空

WebDriverWait(self.driver, 10).until(lambda x: x.find_element_by_id(\'j_username\')).send_keys(username) //将username的值写入用户名值中


WebDriverWait:10秒钟内每隔0.5秒去页面找id=j_username属性的值,超过10秒则报错,有效的避免了页面加载延迟导致找不到对应值的bug

find_element_by_id:表示通过id属性去找(鼠标放在用户名框的位置-->右键-->属性),如下图:

 

四、执行结果

由于此处设置的用户名,密码无效,故返回失败,如下图:(在执行过程中可以看到在火狐中有打开浏览器的一系列操作)

 

五、用例调试

可以通过在pycharm中进入Python Console中一句一句的执行用例语句,进行用例调试并查看用例每一步操作现象

以上是 selenium+python自动化用例登陆界面模板 的全部内容, 来源链接: utcz.com/z/388166.html

回到顶部