51Testing软件测试论坛

标题: 用例登录成功后,在执行 tearDown 的时候(driver.quit)退出登录了? [打印本页]

作者: 测试积点老人    时间: 2020-6-23 13:34
标题: 用例登录成功后,在执行 tearDown 的时候(driver.quit)退出登录了?
用例登录成功后,在执行 tearDown 的时候(driver.quit)退出登录了?
          导致后面用例执行失败
          遇见这样一个问题:
          前一个用例是登录操作,登录成功后,由于在tearDown中有driver.quit()操作,导致该用例执行完毕后tearDown时就退出登录了;而后面的一个用例则是要在登录成功的状态下才能执行的:
  1. <p align="justify" style="margin: 0pt; text-align: justify; -ms-text-justify: inter-ideograph; mso-pagination: none;"><span style="font-family: Calibri; font-size: 10.5pt; font-weight: normal; mso-fareast-font-family: 宋体;" "yes";"="" 1.0000pt;="" roman";="" new="" times=""><font color="#000000">                    def tearDown(self):</font></span></p><p align="justify" style="margin: 0pt; text-align: justify; -ms-text-justify: inter-ideograph; mso-pagination: none;"><span style="font-family: Calibri; font-size: 10.5pt; font-weight: normal; mso-fareast-font-family: 宋体;" "yes";"="" 1.0000pt;="" roman";="" new="" times=""><font color="#000000">                     # <font face="宋体">停止所有的测试桩</font></font></span></p><p align="justify" style="margin: 0pt; text-align: justify; -ms-text-justify: inter-ideograph; mso-pagination: none;"><span style="font-family: Calibri; font-size: 10.5pt; font-weight: normal; mso-fareast-font-family: 宋体;" "yes";"="" 1.0000pt;="" roman";="" new="" times=""><font color="#000000">                     Stub().stop()</font></span></p><p align="justify" style="margin: 0pt; text-align: justify; -ms-text-justify: inter-ideograph; mso-pagination: none;"><span style="font-family: Calibri; font-size: 10.5pt; font-weight: normal; mso-fareast-font-family: 宋体;" "yes";"="" 1.0000pt;="" roman";="" new="" times=""><font color="#000000">                     Self.driver.quit()</font></span></p>
复制代码
请问这个问题该怎样去解决?注释掉tearDown函数中的self.driver.quit()是不行的,因为session未结束,后面的用例无法创建新的session


作者: bling123    时间: 2020-6-23 16:10
本帖最后由 bling123 于 2020-6-23 16:13 编辑

driver.quit()是退出这个drive进程,所以就会把当前浏览器窗口关闭掉,因此之后的方法就不会调用成功,因为他是要建立在浏览器窗口下进行模拟操作。
既然,这边这句代码又不能去掉,所以,你可以在每一个方法中,再执行操作前,都掉用一下driver.get(url),目前是这个思路。
作者: ty1234567890    时间: 2020-6-24 08:53
每次执行用例前登录操作
作者: 海海豚    时间: 2020-6-24 09:28
用例内写一下登录
作者: qqq911    时间: 2020-6-24 10:10
把退出动作加到里面
作者: 郭小贱    时间: 2020-6-24 10:29
1、把登录作为前置条件,在@beforeSuite里面执行;
2、在第二个case中加入登录操作。
作者: bellas    时间: 2020-6-24 10:43
每次执行用例前登录操作
作者: jingzizx    时间: 2020-6-24 13:34
位置不对吧




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2