入住 CI 中国社区 登录
CodeIgniter 中国开发者社区 返回首页

rosemarry的个人空间 https://codeigniter.org.cn/forums/?39678 [收藏] [复制] [分享] [RSS]

日志

"pyton+senium+unittest框架,多个方法只开一次浏览器"

已有 679 次阅读2019-9-18 16:52 |个人分类:Selenium

     今日使用seleniun进行ui自动化脚本编写,其中引入了unittest框架,并且在框架里面编写了def login(self):方法存放登录的脚本,然后再编写了def yw(self):方法存放登录后的业务。可能存在多个方法,并且在unittest结果集中添加了对应的方法后,发觉系统每执行一个方法都会重开一次网页(IE),这样给测试造成了很多不必要的麻烦。虽想是否一个类中无论存在多少个方法,始终都只开一次浏览器(IE)。以下是具体的做法。但是这种是仅限于unittest框架下:
在unittest框架下存在两个必须执行发方法:def setUp(self): 及def tearDown(self)直接默认这么写的发会打开多个网页(有多少个方法需要执行就开多少次)。
那么可以变通下,将这里改为:
    @classmethod
    def tearDownClass(cls):
        cls.driver.quit()
——————————————————————————————————————————————————————
    @classmethod
    def setUpClass(cls):
        cls.driver = webdriver.Firefox()
        cls.base_url = "baidu.com"
        cls.driver.get(cls.base_url)

如此这般即可

路过

雷人

握手

鲜花

鸡蛋

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 入住 CI 中国社区