51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 987|回复: 2
打印 上一主题 下一主题

python自动化中怎样使每个用例都保持登录状态?

[复制链接]
  • TA的每日心情
    无聊
    4 天前
  • 签到天数: 530 天

    连续签到: 2 天

    [LV.9]测试副司令

    跳转到指定楼层
    1#
    发表于 2022-1-21 10:02:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    1测试积点
    我是使用python做的自动化,在京东商城主页做的,第一个用例是登录,第二个用例是想在登录基础上做其他操作。现在test_02没法保持登录,是不是应该把登录写在setUp中,但是那样每次执行用例都需要登录一遍,好浪费时间,刚开始学自动化,我现在脑子比较乱求解答
    1. # -*- coding: utf-8 -*-
    2. import os
    3. import time
    4. import unittest
    5. from selenium import webdriver
    6. from dateutil.parser import parse
    7. from BeautifulReport import BeautifulReport

    8. class Test(unittest.TestCase):

    9.     # 启动函数,每个用例测试前,都会执行该函数
    10.     def setUp(self):
    11.         self.browser = webdriver.Chrome()
    12.         self.browser.set_window_size(1920, 1080)
    13.         self.starttime = parse(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))
    14.         print("开始测试时间:", self.starttime)
    15.         self.browser.get("https://www.jd.com/")
    16.         time.sleep(3)

    17.     # 结束函数,每个用例测试结束后,都会执行该函数
    18.     def tearDown(self):
    19.         time.sleep(3)
    20.         self.browser.quit()
    21.         self.endtime = parse(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))
    22.         print("测试结束时间:", self.endtime)
    23.         totaltime = (self.endtime - self.starttime).total_seconds()
    24.         print("总时长:", totaltime, "秒")

    25.     def test_01(self):
    26.         u"""测试用例1"""
    27.         self.browser.find_element_by_xpath('//*[@id="ttbar-login"]/a[1]').click()
    28.         time.sleep(1)

    29.         self.browser.find_element_by_xpath('//*[@id="content"]/div[2]/div[1]/div/div[3]/a').click()
    30.         time.sleep(1)

    31.         self.browser.find_element_by_id("loginname").send_keys("我的用户名")
    32.         time.sleep(1)

    33.         self.browser.find_element_by_id("nloginpwd").send_keys("我的密码")
    34.         time.sleep(1)

    35.         self.browser.find_element_by_id("loginsubmit").click()
    36.         time.sleep(5)

    37.     # 测试用例2:也是必须以test_开头

    38.     def test_02(self):
    39.         u"""测试用例2"""
    40.         # self.save_img('测试用例2')
    41.         time.sleep(1)

    42. if __name__ == '__main__':
    43.     unittest.main()

    复制代码


    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    6 小时前
  • 签到天数: 1522 天

    连续签到: 1 天

    [LV.Master]测试大本营

    2#
    发表于 2022-1-24 10:17:24 | 只看该作者
    登录以后要保存登录信息
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    9 小时前
  • 签到天数: 2819 天

    连续签到: 1 天

    [LV.Master]测试大本营

    3#
    发表于 2022-1-24 15:34:41 | 只看该作者
    区分用户,保持登录
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-25 16:56 , Processed in 0.068265 second(s), 21 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表