# -*- coding: UTF-8 -*- import configparser import copy import os import pytest from selenium import webdriver from common.driver_common.mywebdriver import MyWebDriver from common.read_data.read_data import ReadData from common.ui_common.objects.app_attributes import Attributes from common.ui_common.objects.geolocation import geolocation from cases.conftest import demo_fixture from common.ui_common.objects.objects_public_operations import download_files from config.workpath import workdir data = ReadData() class Test_Geolocation: """ 用例17bug未修改 """ @pytest.mark.parametrize("data", data.read_data_object(r"Geolocation\\geolocation.json"), ids=data.generate_id) #ip address 增删改查 def test_geolocation(self, demo_fixture, data): geo = geolocation(demo_fixture) geo.geolocation_case(data) @pytest.mark.parametrize("data",[{ "ids": "用例23、Geolocation_Country_and_Region的创建Audit log查看", "Geo Name ID": "random", "Continent": "Autoui", "Country Abbreviation": "Autoui", "Country and Region": "Autoui", "Super Administrative Area": "Autoui", "Administrative Area": "Autoui", "Longitude": 0, "Latitude": 0, "Create": { "model": "0", "type": "new_object", "item": { "IPv4": ["1.1.1.1"], "IPv6": ["1:1:1::1/24"] } }, "Createtype": "Country_and_Region", "isRepetition": "", "Subtype": "", "Search_type": "Geo Name ID" },]) def test_verify_audit_logs(self, demo_fixture, data): geo = geolocation(demo_fixture) geo._verify_audit_logs(data) @pytest.mark.parametrize("data", [ { "turn_mode": 1, "destination_page": "0" }, { "turn_mode": 2, "destination_page": "0" }, { "turn_mode": 3, "destination_page": "0" }, { "turn_mode": 4, "destination_page": "0" } ]) def test_geo_page_turn_case(self,demo_fixture,data): geo = geolocation(demo_fixture) geo._page_turn_case(data) @pytest.mark.parametrize("data", [ { "ids": "用例24、Geolocation_City的重复ip校验", "Geo Name ID": "random", "Continent":"Oceania", "Country":"American Samoa", "Super Administrative Area":"Eastern District", "Administrative Area": "Pago Pago", "Longitude": 20, "Latitude": -30, "Create": { "model": "0", "type": "new_object", "item": { "IPv4": ["192.13.13.199"] } }, "Createtype": "City", "isRepetition": "", "Subtype": "", "Search_type": "IP" }, ]) def test_itemDuplicateCheck(self, demo_fixture, data): geo = geolocation(demo_fixture) geo._itemDuplicateCheck(data) @pytest.mark.parametrize("data", [ { "ids": "用例25、Object查看Statistics页面校验", "Geo Name ID": "random", "Continent":"Oceania", "Country":"American Samoa", "Super Administrative Area":"Eastern District", "Administrative Area": "Pago Pago", "Longitude": 20, "Latitude": -30, "Create": { "model": "0", "type": "new_object", "item": { "IPv4": ["192.13.13.199"] } }, "Createtype": "City", "isRepetition": "", "Subtype": "", "Search_type": "Administrative Area" }, ]) def test_View_statistics_case(self,demo_fixture,data): geo = geolocation(demo_fixture) geo._View_statistics_case(data) @pytest.mark.parametrize("data",[ { "Type": "empty", "Continent": "" }, { "Type": "format", "Continent": "@#!@#@1235" }, { "Type": "search", "Search_type": "0", "Continent": "Asia" }, { "Type": "search", "Search_type": "1", "Continent": "欧洲" } ]) def test_add_continent_error_check(self,demo_fixture,data): geo = geolocation(demo_fixture) geo._add_continent_error(data) @pytest.mark.parametrize("data", data.read_data_object(r"Geolocation\\geo_sideslip.json"), ids=data.generate_id) def test_sideslip_error_check(self,demo_fixture,data): geo = geolocation(demo_fixture) geo._sideslip_check(data) @pytest.mark.parametrize("data", [ { "ids": "用例25、Object查看Statistics页面校验", "Geo Name ID": "random", "Continent": "Oceania", "Country": "American Samoa", "Super Administrative Area": "Eastern District", "Administrative Area": "Pago Pago", "Longitude": 20, "Latitude": -30, "Create": { "model": "0", "type": "new_object", "item": { "IPv4": ["192.13.13.199"] } }, "Createtype": "City", "isRepetition": "", "Subtype": "", "Search_type": "Administrative Area&IP&Geo Name ID" }, ]) def test_verify_search(self, demo_fixture, data): geo = geolocation(demo_fixture) geo.verify_search(data) def test_edit_built_in_objects(self, demo_fixture): geo = geolocation(demo_fixture) geo._edit_built_in_objects() @pytest.mark.parametrize("data", [ { "ids": "用例25、Object查看Statistics页面校验", "Geo Name ID": "random", "Continent": "Oceania", "Country": "American Samoa", "Super Administrative Area": "Eastern District", "Administrative Area": "Pago Pago", "Sub Administrative Area": "Autoui", "Locality": "Autoui", "Longitude": 20, "Latitude": -30, "Create": { "model": "0", "type": "new_object", "item": { "IPv4": ["192.13.13.199"] }, "modify": { "type": "0", "modify_data": "Modify" } }, "Createtype": "City", "isRepetition": "", "Subtype": "", "Search_type": "Geo Name ID" },{ "ids": "用例25、Object查看Statistics页面校验", "Geo Name ID": "random", "Continent": "Oceania", "Country": "American Samoa", "Super Administrative Area": "Eastern District", "Administrative Area": "Pago Pago", "Sub Administrative Area": "Autoui", "Locality": "Autoui", "Longitude": 20, "Latitude": -30, "Create": { "model": "0", "type": "new_object", "item": { "IPv4": ["192.13.13.199"] }, "modify": { "type": "1", "modify_data": "Modify" } }, "Createtype": "City", "isRepetition": "", "Subtype": "", "Search_type": "Geo Name ID" },{ "ids": "用例25、Object查看Statistics页面校验", "Geo Name ID": "random", "Continent": "Oceania", "Country": "American Samoa", "Super Administrative Area": "Eastern District", "Administrative Area": "Pago Pago", "Sub Administrative Area": "Autoui", "Locality": "Autoui", "Longitude": 20, "Latitude": -30, "Create": { "model": "0", "type": "new_object", "item": { "IPv4": ["192.13.13.199"] }, "modify": { "type": "2", "modify_data": "Modify" } }, "Createtype": "City", "isRepetition": "", "Subtype": "", "Search_type": "Geo Name ID" } ]) def test_edit_area(self,demo_fixture,data): geo = geolocation(demo_fixture) geo.modify_area(data) if __name__ == '__main__': # # print(data.read_data_object("moible_identities.json")) # a = time.time() # print(111111111111) pytest.main(['-sv', 'test_ip_address.py', '--check-max-tb=60000']) # # b = time.time() # c = b - a # print("用时:::", c) # print(3333333333333) """ # 在测试文件的当前路径执行如下命令执行测试用例: pytest –cache-clear -v pytest_json.py --alluredir ./allure # 执行如下命令生成测试报告(自动打开浏览器): allure serve allure """