コード例 #1
0
def test_c142918(browser):
    try:
        login_web(browser, url=dev1)
        # 删除默认ACL
        del_default_acl_group_lzy(browser)

        # 添加ACL 全通开log
        add_acl_group_complete(browser, name='lzy', enable='yes')
        add_ipv4acl_lzy(browser, aclgroup_name='lzy', source_zone_interface='Z:any',
                        source_custom='no', fromip='', fromnetmask='',
                        source_address_object='yes', s_address_object='A:any',
                        mac='', dest_zone_interface='Z:any',
                        dest_custom='no', toip='', tonetmask='',
                        dest_address_object='yes', d_address_object='A:any',
                        service='P:any', schdule='-- 无 --',
                        accept='yes', drop='no',
                        auth='-- 无 --', icf='no', log='yes', save='yes', cancel='no')

        # 添加82到83 与83到82的路由
        shell_82 = Shell_SSH()
        shell_82.connect(hostip=dev2)
        shell_82.execute("en")
        shell_82.execute("conf t")
        shell_82.execute("ip route 13.1.1.0/24 gateway 12.1.1.1")
        shell_82.close()

        shell_83 = Shell_SSH()
        shell_83.connect(hostip=dev3)
        shell_83.execute("en")
        shell_83.execute("conf t")
        shell_83.execute("ip route 12.1.1.0/24 gateway 13.1.1.1")
        shell_83.close()

        # 流量日志过滤级别改为all
        edit_log_filter_lzy(browser, index="4", all='yes', debug='yes/no', info='yes/no', notice='yes/no',
                            warning='yes/no', error='yes/no', critical='yes/no', emerg='yes/no', alert="yes/no")

        # 删除日志
        delete_log(browser, log_type=流量日志)

        # 先用82ping83  使本条流量日志源地址=[12.1.1.2]
        sign_out_jyl(browser)
        login_web(browser, url=dev2)
        sleep(1)
        diag_ping(browser, ipadd="13.1.1.3", interface=interface_name_2)



        sign_out_jyl(browser)
        login_web(browser, url=dev1)
        # 查询日志
        advanced_query_security_or_traffic_log_lzy(browser, log_type=流量日志, advanced="yes", ambiguous_search="",
                                                   from_ip="", exclude_from_ip="", to_ip="", exclude_to_ip="",
                                                   from_port="", to_port="",
                                                   protocol="", exclude_protocol="", start_date="", start_time="",
                                                   end_date="", end_time=""
                                                   , level="change", select_all="yes/no", emerg="yes/no",
                                                   alert="yes/no",
                                                   critical="yes/no", error="yes/no", warning="yes/no", notice="yes",
                                                   info="yes/no",
                                                   debug="yes/no", module="change/unchange", modul_name="")


        # 获取页面信息
        info1 = browser.find_element_by_xpath('//*[@id="levelarea0"]').text
        # print(info1)


        # 还原
        # 删除ACL
        del_all_acl_group_lzy(browser)
        # 还原流量日志过滤级别error critical alert emerg
        edit_log_filter_lzy(browser, index="4", all='yes/no', debug='yes/no', info='yes/no', notice='yes/no',
                            warning='yes/no', error='yes', critical='yes', emerg='yes', alert="yes")
        # 删除日志
        delete_log(browser, log_type=流量日志)
        # 删82上路由
        shell_82 = Shell_SSH()
        shell_82.connect(hostip=dev2)
        shell_82.execute("en")
        shell_82.execute("conf t")
        shell_82.execute("no ip route 13.1.1.0/24 gateway 12.1.1.1")
        shell_82.close()
        # 删83上路由
        shell_83 = Shell_SSH()
        shell_83.connect(hostip=dev3)
        shell_83.execute("en")
        shell_83.execute("conf t")
        shell_83.execute("no ip route 12.1.1.0/24 gateway 13.1.1.1")
        shell_83.close()



        try:
            assert "notice" in info1
            rail_pass(test_run_id, test_id)
        except:
            rail_fail(test_run_id, test_id)
            assert "notice" in info1
    except Exception as err:
        # 如果上面的步骤有报错,重新设备,恢复配置
        print(err)
        reload(hostip=[dev1, dev2, dev3])
        rail_fail(test_run_id, test_id)
        assert False
コード例 #2
0
def test_c142882(browser):
    try:
        login_web(browser, url=dev3)
        # 删除默认ACL
        del_default_acl_group_lzy(browser)

        # 添加ACL 全通开log
        add_acl_group_complete(browser, name='lzy', enable='yes')
        add_ipv4acl_lzy(browser,
                        aclgroup_name='lzy',
                        source_zone_interface='Z:any',
                        source_custom='no',
                        fromip='',
                        fromnetmask='',
                        source_address_object='yes',
                        s_address_object='A:any',
                        mac='',
                        dest_zone_interface='Z:any',
                        dest_custom='no',
                        toip='',
                        tonetmask='',
                        dest_address_object='yes',
                        d_address_object='A:any',
                        service='P:any',
                        schdule='-- 无 --',
                        accept='yes',
                        drop='no',
                        auth='-- 无 --',
                        icf='no',
                        log='yes',
                        save='yes',
                        cancel='no')
        # 添加81到84 与84到81的路由
        shell_81 = Shell_SSH()
        shell_81.connect(hostip=dev1)
        shell_81.execute("en")
        shell_81.execute("conf t")
        shell_81.execute("ip route 34.1.1.0/24 gateway 13.1.1.3")
        shell_81.close()

        shell_84 = Shell_SSH()
        shell_84.connect(hostip=dev4)
        shell_84.execute("en")
        shell_84.execute("conf t")
        shell_84.execute("ip route 13.1.1.0/24 gateway 34.1.1.3")
        shell_84.close()

        # 流量日志过滤级别改为all
        edit_log_filter_lzy(browser,
                            index="4",
                            all='yes',
                            debug='yes/no',
                            info='yes/no',
                            notice='yes/no',
                            warning='yes/no',
                            error='yes/no',
                            critical='yes/no',
                            emerg='yes/no',
                            alert="yes/no")

        # 删除日志
        delete_log(browser, log_type=流量日志)

        # 再用81ping84(过ACL 有日志)
        sign_out_jyl(browser)
        login_web(browser, url=dev1)
        sleep(1)
        diag_ping(browser, ipadd="34.1.1.4", interface=interface_name_3)

        # 获取日志总数 不为0
        sign_out_jyl(browser)
        login_web(browser, url=dev3)
        num1 = get_log_counts_lzy(browser, log_type=流量日志)
        print(num1)

        # 刪除日志成功
        delete_log(browser, 流量日志)
        log1 = get_log(browser, 管理日志)
        print(log1)

        # 获取日志总数 为0
        num2 = get_log_counts_lzy(browser, log_type=流量日志)
        print(num2)

        # 还原
        # 删除ACL
        del_all_acl_group_lzy(browser)
        # 还原流量日志过滤级别error critical alert emerg
        edit_log_filter_lzy(browser,
                            index="4",
                            all='yes/no',
                            debug='yes/no',
                            info='yes/no',
                            notice='yes/no',
                            warning='yes/no',
                            error='yes',
                            critical='yes',
                            emerg='yes',
                            alert="yes")
        # 删81上路由
        shell_81 = Shell_SSH()
        shell_81.connect(hostip=dev1)
        shell_81.execute("en")
        shell_81.execute("conf t")
        shell_81.execute("no ip route 34.1.1.0/24 gateway 13.1.1.3")
        shell_81.close()
        # 删84上路由
        shell_84 = Shell_SSH()
        shell_84.connect(hostip=dev4)
        shell_84.execute("en")
        shell_84.execute("conf t")
        shell_84.execute("no ip route 13.1.1.0/24 gateway 34.1.1.3")
        shell_84.close()

        try:
            assert num1 != 0 and num2 == 0 and "刪除日志成功" in log1
            rail_pass(test_run_id, test_id)
        except:
            rail_fail(test_run_id, test_id)
            assert num1 != 0 and num2 == 0 and "刪除日志成功" in log1
    except Exception as err:
        # 如果上面的步骤有报错,重新设备,恢复配置
        print(err)
        reload(hostip=dev2)
        rail_fail(test_run_id, test_id)
        assert False