测试用例顺序执行时,若上一个用例未退出iframe,下一个测试用例默认需要一次退出iframe,否则定位iframe出现错误

来源:互联网 发布:c语言实现web服务器 编辑:程序博客网 时间:2024/06/07 18:31

python  elenium自动化测试用例,

当我按测试计划顺序执行测试用例时,有一个用例报错,并未执行到退出iframe框架中,当执行下一个用重新定位iframe时,定位错误,导致后续很多用例无法执行!

如一个用例删除客户数据

def DeleteCustom(self,testsuite,testcase,inputdata,expectdata):

        clientname=inputdata.get('clientname')
        #若有未退出iframe,需先退出
        TestWebDriver.driver.switch_to_default_content()
        #1.定位iframe
        TestWebDriver.driver.switch_to_frame(TestWebDriver.driver.find_element_by_id("mainFrame"))
        #打开添加客户对话框,并添加客户信息
        if inputdata.get("operaUnitName")==u"删除":
            #选中客户信息列表中客户信息
            try:
                TestWebDriver.driver.find_element_by_css_selector("td[title=\""+clientname+"\"]").click()
            except Exception as e:
                print "未选中数据:",('%s' % e)
            #点击删除按钮,弹出删除客户信息提示框
            TestWebDriver.driver.find_element_by_id("del_gridTable").click()
            time.sleep(5)
            #退出iframe
            TestWebDriver.driver.switch_to_default_content()
            TestWebDriver.driver.switch_to_frame(TestWebDriver.driver.find_element_by_id("mainFrame"))
            #点击确定删除按钮
            TestWebDriver.driver.find_element_by_xpath("//div[@id='popup_panel']/input[1]").click()
            time.sleep(5)
            #点击确认按钮
            TestWebDriver.driver.find_element_by_xpath("(//button[@type='button'])[5]").click()
            #退出iframe
            TestWebDriver.driver.switch_to_default_content()
0 0
原创粉丝点击