用例登录成功后,在执行 tearDown 的时候(driver.quit)退出登录了?
用例登录成功后,在执行 tearDown 的时候(driver.quit)退出登录了?导致后面用例执行失败 遇见这样一个问题: 前一个用例是登录操作,登录成功后,由于在tearDown中有driver.quit()操作,导致该用例执行完毕后tearDown时就退出登录了;而后面的一个用例则是要在登录成功的状态下才能执行的:<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:13 编辑
driver.quit()是退出这个drive进程,所以就会把当前浏览器窗口关闭掉,因此之后的方法就不会调用成功,因为他是要建立在浏览器窗口下进行模拟操作。
既然,这边这句代码又不能去掉,所以,你可以在每一个方法中,再执行操作前,都掉用一下driver.get(url),目前是这个思路。 每次执行用例前登录操作 用例内写一下登录 把退出动作加到里面 1、把登录作为前置条件,在@beforeSuite里面执行;
2、在第二个case中加入登录操作。 每次执行用例前登录操作 位置不对吧
页:
[1]