def setUp(self): self.driver = AutomateDriverServer(choose='chrome') self.base_url = self.driver.base_url self.base_page = BasePageServer(self.driver, self.base_url) self.log_in_base = LogInBaseServer(self.driver, self.base_url) self.safe_area_page = SafeAreaPage(self.driver, self.base_url) self.base_page.open_page() self.base_page.click_chinese_button() self.driver.set_window_max() self.log_in_base.log_in_jimitest() self.safe_area_page.click_control_after_click_safe_area()
class TestCase139RiskPointShare(unittest.TestCase): def setUp(self): self.driver = AutomateDriverServer() self.base_url = self.driver.base_url self.base_page = BasePageServer(self.driver, self.base_url) self.log_in_base = LogInBaseServer(self.driver, self.base_url) self.safe_area_page = SafeAreaPage(self.driver, self.base_url) self.base_page.open_page() self.base_page.click_chinese_button() self.driver.set_window_max() self.assert_text = AssertText() self.log_in_base.log_in_jimitest() self.connect_sql = ConnectSql() self.search_sql = SafeAreaSearchSql() self.safe_area_page_read_csv = SafeAreaPageReadCsv() def tearDown(self): self.driver.quit_browser() def test_case_139_risk_point_share(self): # 点击账号中心 sleep(5) self.safe_area_page.click_account_center() # 获取登录账号 account = self.log_in_base.get_log_in_account() # 断言url self.safe_area_page.click_control_after_click_safe_area() expect_url = self.base_url + "/safearea/geozonemap?flag=0" self.assertEqual(expect_url, self.driver.get_current_url()) self.safe_area_page.click_risk_point_share_button() csv_file = self.safe_area_page_read_csv.read_csv( 'risk_point_share.csv') csv_data = csv.reader(csv_file) is_header = True for row in csv_data: if is_header: is_header = False continue data = {'risk_name': row[0]} self.safe_area_page.add_data_to_search_risk_point_in_safe_area( data) # 获取查询出来的页面条数 web_total = self.safe_area_page.get_web_total_after_click_search_risk_share( ) sql_total = self.safe_area_page.get_sql_total_after_click_search_risk_share( data) self.assertEqual(web_total, sql_total) csv_file.close()
def setUp(self): self.driver = AutomateDriverServer(choose='chrome') self.base_url = self.driver.base_url self.base_page = BasePageServer(self.driver, self.base_url) self.log_in_base = LogInBaseServer(self.driver, self.base_url) self.safe_area_page = SafeAreaPage(self.driver, self.base_url) self.safe_area_page_read_csv = SafeAreaPageReadCsv() self.assert_text = AssertText() self.connect_sql = ConnectSql() self.safe_area_search_sql = SafeAreaSearchSql() self.base_page.open_page() self.base_page.click_chinese_button() self.driver.set_window_max() self.log_in_base.log_in_jimitest()
def setUp(self): self.driver = AutomateDriverServer() self.base_url = self.driver.base_url self.base_page = BasePageServer(self.driver, self.base_url) self.log_in_base = LogInBaseServer(self.driver, self.base_url) self.safe_area_page = SafeAreaPage(self.driver, self.base_url) self.base_page.open_page() self.base_page.click_chinese_button() self.driver.set_window_max() self.assert_text = AssertText() self.log_in_base.log_in() self.safe_area_page.click_control_after_click_safe_area() self.connect_sql = ConnectSql() self.search_sql = SafeAreaSearchSql()
class TestCase131MarkOperation(unittest.TestCase): """ web_autotest账号,标注点页面操作 """ # author:邓肖斌 def setUp(self): self.driver = AutomateDriverServer(choose='chrome') self.base_url = self.driver.base_url self.base_page = BasePageServer(self.driver, self.base_url) self.log_in_base = LogInBaseServer(self.driver, self.base_url) self.safe_area_page = SafeAreaPage(self.driver, self.base_url) self.base_page.open_page() self.base_page.click_chinese_button() self.driver.set_window_max() self.log_in_base.log_in() self.safe_area_page.click_control_after_click_safe_area() self.safe_area_page_read_csv = SafeAreaPageReadCsv() self.assert_text = AssertText() self.connect_sql = ConnectSql() self.search_sql = SafeAreaSearchSql() def tearDown(self): self.driver.quit_browser() def test_case_mark_operation(self): # 断言url expect_url = self.base_url + "/safearea/geozonemap?flag=0" self.assertEqual(expect_url, self.driver.get_current_url()) self.safe_area_page.click_mark_button() sleep(2) # 全选 self.safe_area_page.click_all_select_button_with_mark() # 点击删除 self.safe_area_page.click_detele_button_with_mark() # 点击取消 self.safe_area_page.click_cancel_detele_button() # 点击删除 self.safe_area_page.click_detele_button_with_mark() # 点击关闭 self.safe_area_page.click_close_detele_button() # 点击新建按钮 self.safe_area_page.click_create_mark_point() text = self.safe_area_page.get_text_after_create_map() self.assertEqual(self.assert_text.safe_area_page_map_text(), text) # 获取第一个地标的名称 mark_name = self.safe_area_page.get_first_mark_name_text() # 点击列表的编辑 self.safe_area_page.click_edit_button_in_list() # 点击保存 self.safe_area_page.click_ensure_edit_in_list('名称1', '描述1') # 获取保存之后的地标名称 mark_name_after_save = self.safe_area_page.get_first_mark_name_text() # 断言1:网页上名称的变化 self.assertNotEqual(mark_name, mark_name_after_save) # 断言2:用修改之前的名称在数据库搜索 # 创建数据库连接 connect = self.connect_sql.connect_tuqiang_sql() # 创建游标 cursor = connect.cursor() get_total_count_sql = self.search_sql.search_sql_in_test_case_131( '%s') % mark_name print(get_total_count_sql) cursor.execute(get_total_count_sql) current_total = cursor.fetchall() total_list1 = [] for range1 in current_total: for range2 in range1: total_list1.append(range2) total = len(total_list1) self.assertEqual(0, total) # 断言3:用修改之后的名称在数据库搜索 get_total_count_sql = self.search_sql.search_sql_in_test_case_131( '%s') % mark_name_after_save print(get_total_count_sql) cursor.execute(get_total_count_sql) current_total = cursor.fetchall() total_list2 = [] for range1 in current_total: for range2 in range1: total_list2.append(range2) total = len(total_list2) self.assertEqual(1, total) self.assertEqual('描述1', total_list2[0]) # 点击列表的编辑 self.safe_area_page.click_edit_button_in_list() # 点击保存 self.safe_area_page.click_ensure_edit_in_list('名称', '描述') # 点击列表的编辑 self.safe_area_page.click_edit_button_in_list() # 点击取消 self.safe_area_page.click_cancel_edit_in_list() # 点击列表中的删除 self.safe_area_page.click_delete_button_in_list() self.safe_area_page.click_cancel_detele_button() # 点击关闭 self.safe_area_page.click_delete_button_in_list() self.safe_area_page.click_close_detele_button()
class TestCase136SafeAreaRelevance(unittest.TestCase): """ jimitest账号,围栏关联设备 """ # author:邓肖斌 def setUp(self): self.driver = AutomateDriverServer(choose='chrome') self.base_url = self.driver.base_url self.base_page = BasePageServer(self.driver, self.base_url) self.log_in_base = LogInBaseServer(self.driver, self.base_url) self.safe_area_page = SafeAreaPage(self.driver, self.base_url) self.base_page.open_page() self.base_page.click_chinese_button() self.assert_text = AssertText() self.driver.set_window_max() self.log_in_base.log_in_jimitest() self.safe_area_page.click_control_after_click_safe_area() def tearDown(self): self.driver.quit_browser() def test_case_safe_area_relevance(self): # 断言url expect_url = self.base_url + "/safearea/geozonemap?flag=0" self.assertEqual(expect_url, self.driver.get_current_url()) # 选择围栏 self.safe_area_page.click_select_fence_button() # 点击关联 self.safe_area_page.click_relevance_button() # 获取当前围栏关联的设备总数 dev_num = self.safe_area_page.get_total_num_of_dev_relation_fences() # 获取实际条数 cur_num = self.safe_area_page.get_all_num_of_dev_relation_fences() # 关闭 self.safe_area_page.click_close() self.assertEqual(dev_num, cur_num) # 点击关联 self.safe_area_page.click_relevance_button() # 取消 self.safe_area_page.click_cancel_edit() # 点击关联 self.safe_area_page.click_relevance_button() # 循环点击左侧的客户树 for n in range(5): self.safe_area_page.click_customer(n) # 获取右侧暂无数据的属性 attribute = self.safe_area_page.get_no_data_attribute() if 'display: none;' in attribute: text = self.safe_area_page.get_text_no_data() self.assertIn(self.assert_text.account_center_page_no_data_text(), text) else: # 点击收起默认组 self.safe_area_page.click_close_default_group() group_number = self.safe_area_page.get_total_group() for m in range(group_number): # 点击每一个分组 group_total_dev = self.safe_area_page.get_total_dev_in_per_group(m) self.safe_area_page.click_open_per_group(m) list_total_dev = self.safe_area_page.get_list_dev_in_per_group(m) self.assertEqual(group_total_dev, str(list_total_dev)) self.safe_area_page.click_open_per_group(m) # 验证已选中的设备数量和统计的是否一致 count_dev_number = self.safe_area_page.get_count_dev_number() get_list_total_number = self.safe_area_page.get_list_total_number() self.assertEqual(str(get_list_total_number), count_dev_number)
class TestCase137SafeAreaMarkPointException(unittest.TestCase): """ jimitest账号,标注点分页功能 author:邓肖斌 """ def setUp(self): self.driver = AutomateDriverServer(choose='chrome') self.base_url = self.driver.base_url self.base_page = BasePageServer(self.driver, self.base_url) self.log_in_base = LogInBaseServer(self.driver, self.base_url) self.safe_area_page = SafeAreaPage(self.driver, self.base_url) self.base_page.open_page() self.base_page.click_chinese_button() self.driver.set_window_max() self.log_in_base.log_in_jimitest() self.safe_area_page.click_control_after_click_safe_area() def tearDown(self): self.driver.quit_browser() def test_case_safe_area_mark_point_exception(self): # 断言url expect_url = self.base_url + "/safearea/geozonemap?flag=0" self.assertEqual(expect_url, self.driver.get_current_url()) # 点击标注点 self.safe_area_page.click_mark_button() # 循环点击下一页 page_number = self.safe_area_page.get_total_page_num_mark_page() if page_number == '0': text = self.safe_area_page.get_page_in_mark_page() self.assertEqual('0/0', text) elif page_number == '1': text = self.safe_area_page.get_page_in_mark_page() self.assertEqual('1/1', text) # 点击下一页 self.safe_area_page.click_next_page_in_mark_page() # 获取最后一页数量 number = self.safe_area_page.get_per_number_in_mark_page() self.assertNotEqual(0, number) # 点击上一页 self.safe_area_page.click_ago_page_in_mark_page() number = self.safe_area_page.get_per_number_in_mark_page() self.assertNotEqual(0, number) else: for n in range(int(page_number)): text = self.safe_area_page.get_page_in_mark_page() self.assertEqual('%s/%s' % (str(n + 1), page_number), text) self.safe_area_page.click_next_page_in_mark_page() # 点击下一页 self.safe_area_page.click_next_page_in_mark_page() # 获取最后一页数量 number = self.safe_area_page.get_per_number_in_mark_page() self.assertNotEqual(0, number) for n in range(int(page_number)): text = self.safe_area_page.get_page_in_mark_page() self.assertEqual( '%s/%s' % (str(int(page_number) - n), page_number), text) self.safe_area_page.click_ago_page_in_mark_page() # 点击上一页 self.safe_area_page.click_ago_page_in_mark_page() number = self.safe_area_page.get_per_number_in_mark_page() self.assertNotEqual(0, number)
class TestCase138SafeAreaMarkPointOperation(unittest.TestCase): """ 围栏编辑页面搜索关联设备 """ # author:邓肖斌 def setUp(self): self.driver = AutomateDriverServer(choose='chrome') self.base_url = self.driver.base_url self.base_page = BasePageServer(self.driver, self.base_url) self.log_in_base = LogInBaseServer(self.driver, self.base_url) self.safe_area_page = SafeAreaPage(self.driver, self.base_url) self.safe_area_page_read_csv = SafeAreaPageReadCsv() self.assert_text = AssertText() self.connect_sql = ConnectSql() self.safe_area_search_sql = SafeAreaSearchSql() self.base_page.open_page() self.base_page.click_chinese_button() self.driver.set_window_max() self.log_in_base.log_in_jimitest() def tearDown(self): self.driver.quit_browser() def test_case_safe_area_mark_point_operation(self): self.log_in_base.click_account_center_button() # 获取登录账号的用户名 current_account = self.log_in_base.get_log_in_account() # 跳转到安全区域 self.safe_area_page.click_control_after_click_safe_area() # 断言url expect_url = self.base_url + "/safearea/geozonemap?flag=0" self.assertEqual(expect_url, self.driver.get_current_url()) # 点击围栏 self.safe_area_page.click_select_fence_button() # 点击编辑 self.safe_area_page.click_edit_fence() # 获取围栏名称 fence_name = self.safe_area_page.get_fence_name_of_cur_edit() print("当前围栏名称为:%s" % fence_name) i = 0 # 读csv csv_file = self.safe_area_page_read_csv.read_csv( 'safe_area_fences_relation_dev_data.csv') csv_data = csv.reader(csv_file) is_header = True for row in csv_data: if is_header: is_header = False continue data = { "account": row[0], "search_type": row[1], "search_content": row[2] } self.safe_area_page.fences_edit_page_search_dev(data) # 断言 # 连接数据库 connect = self.connect_sql.connect_tuqiang_sql() # 建立游标 cursor = connect.cursor() geo_id_sql = self.safe_area_search_sql.search_sql_in_test_case_138_01( fence_name) # 执行 cursor.execute(geo_id_sql) geo = cursor.fetchall() print(geo) for row1 in geo: geo_id = {"geo_id": row1[0]} # 判断搜索条件 get_sql = self.safe_area_search_sql. \ search_sql_in_test_case_138_02(geo_id["geo_id"], current_account, data) # 执行sql print(get_sql) cursor.execute(get_sql) current_total = cursor.fetchall() total_list = [] for range1 in current_total: for range2 in range1: total_list.append(range2) total_num = len(total_list) web_total = self.safe_area_page.get_fence_relation_dev_num() i += 1 print('第%s次查询页面的条数是:%s' % (i, web_total)) print('第%s次查询数据库的条数为:%s' % (i, total_num)) self.assertEqual(total_num, web_total) cursor.close() connect.close()
class TestCase135SafeAreaExpertion(unittest.TestCase): """ web_autotest账号,选择单个区域右侧编辑操作 """ # author:邓肖斌 def setUp(self): self.driver = AutomateDriverServer(choose='chrome') self.base_url = self.driver.base_url self.base_page = BasePageServer(self.driver, self.base_url) self.log_in_base = LogInBaseServer(self.driver, self.base_url) self.safe_area_page = SafeAreaPage(self.driver, self.base_url) self.base_page.open_page() self.base_page.click_chinese_button() self.assert_text = AssertText() self.driver.set_window_max() self.log_in_base.log_in() self.safe_area_page.click_control_after_click_safe_area() def tearDown(self): self.driver.quit_browser() def test_case_safe_area_expertion(self): # 断言url expect_url = self.base_url + "/safearea/geozonemap?flag=0" self.assertEqual(expect_url, self.driver.get_current_url()) # 点击删除按钮 self.safe_area_page.click_delete_button() text = self.safe_area_page.get_text_after_click_delete() self.assertEqual( self.assert_text.safe_area_page_choose_delete_content(), text) self.safe_area_page.click_ensure() self.safe_area_page.click_delete_button() text = self.safe_area_page.get_text_after_click_delete() self.assertEqual( self.assert_text.safe_area_page_choose_delete_content(), text) self.safe_area_page.click_close() # 点击新建 self.safe_area_page.click_creat_map() # 获取文本 text = self.safe_area_page.get_text_after_create_map() self.assertEqual(self.assert_text.safe_area_page_map_text(), text) # 选择黑车库操作 self.safe_area_page.click_select_black_address_button() # 获取列表第一个的名称 black_address_name = self.safe_area_page.get_first_list_black_address_name( ) # 点击编辑 self.safe_area_page.click_edit_black_address() # 获取打开编辑之后的黑车地址库名字 name = self.safe_area_page.get_black_address_after_click_edit() self.assertEqual(black_address_name, name) # 验证黑车库的按钮是否被选中 black_address_value = self.safe_area_page.get_black_address_input_value( ) self.assertEqual(True, black_address_value) # 点击取消 self.safe_area_page.click_cancel_edit() # 点击编辑 self.safe_area_page.click_edit_black_address() # 获取打开编辑之后的黑车地址库名字 name = self.safe_area_page.get_black_address_after_click_edit() self.assertEqual(black_address_name, name) # 验证黑车库的按钮是否被选中 black_address_value = self.safe_area_page.get_black_address_input_value( ) self.assertEqual(True, black_address_value) # 点击保存 self.safe_area_page.click_ensure() # 获取保存后的文本 text = self.safe_area_page.get_text_after_ensure() print(self.assert_text.account_center_page_operation_done()) print(text) self.assertIn(self.assert_text.account_center_page_operation_done(), text) # 选择围栏编辑 self.safe_area_page.click_select_fence_button() # 获取第一个围栏的名称 fence_name = self.safe_area_page.get_first_list_fence_name() print('1 = %s' % fence_name) # 点击编辑 self.safe_area_page.click_edit_fence() # 获取打开编辑之后的围栏名称 names = self.safe_area_page.get_fence_name_after_edit() print('2 = %s' % names) self.assertEqual(fence_name, names) # 点击取消 self.safe_area_page.click_cancel_edit() # 点击编辑 self.safe_area_page.click_edit_fence() # 获取打开编辑之后的围栏名称 names = self.safe_area_page.get_fence_name_after_edit() self.assertEqual(fence_name, names) # 点击取消 self.safe_area_page.click_ensure() # 获取保存后的文本 text = self.safe_area_page.get_text_after_ensure() self.assertIn(self.assert_text.account_center_page_operation_done(), text)
class TestCase129AreaTableOperaition(unittest.TestCase): """ 围栏页面操作 """ # author:邓肖斌 def setUp(self): self.driver = AutomateDriverServer() self.base_url = self.driver.base_url self.base_page = BasePageServer(self.driver, self.base_url) self.log_in_base = LogInBaseServer(self.driver, self.base_url) self.safe_area_page = SafeAreaPage(self.driver, self.base_url) self.base_page.open_page() self.base_page.click_chinese_button() self.driver.set_window_max() self.assert_text = AssertText() self.log_in_base.log_in() self.safe_area_page.click_control_after_click_safe_area() self.connect_sql = ConnectSql() self.search_sql = SafeAreaSearchSql() def tearDown(self): self.driver.quit_browser() def test_case_area_table_operaition(self): # 断言url expect_url = self.base_url + "/safearea/geozonemap?flag=0" self.assertEqual(expect_url, self.driver.get_current_url()) # 点击全选按钮 self.safe_area_page.click_all_select_button() # 点击删除 self.safe_area_page.click_delete_button() sleep(1) # 点击取消删除 self.safe_area_page.click_cancel_detele_button() # 点击选择围栏 self.safe_area_page.click_select_fence_button() # 点击列表中的编辑 self.safe_area_page.click_list_edit_button() # 获取名称 name_text = self.safe_area_page.get_first_fence_name_text() # 断言 self.assertEqual(self.assert_text.safe_area_page_edit_text(), self.safe_area_page.get_text_after_click_edit()) # 输入内容保存 self.safe_area_page.ensure_edit_list('名称b', '描述b') # 获取保存之后的名称 name_after_save = self.safe_area_page.get_first_fence_name_text() # 断言1:网页上围栏名称的变化 self.assertNotEqual(name_text, name_after_save) # 创建数据库连接 connect = self.connect_sql.connect_tuqiang_sql() # 创建游标 cursor = connect.cursor() # 断言2:用修改之前的名称在数据库搜索 get_total_count_sql = self.search_sql.search_sql_in_test_case_129( name_text) print(get_total_count_sql) cursor.execute(get_total_count_sql) current_total = cursor.fetchall() total_list1 = [] for range1 in current_total: for range2 in range1: total_list1.append(range2) total = len(total_list1) self.assertEqual(0, total) # 断言3:用修改之后的名称在数据库搜索 get_total_count_sql = self.search_sql.search_sql_in_test_case_129( name_after_save) print(get_total_count_sql) cursor.execute(get_total_count_sql) current_total = cursor.fetchall() total_list2 = [] for range1 in current_total: for range2 in range1: total_list2.append(range2) total = len(total_list2) self.assertEqual(1, total) self.assertEqual('描述b', total_list2[0]) # 点击列表中的编辑 self.safe_area_page.click_list_edit_button() # 输入内容保存 self.safe_area_page.ensure_edit_list('名称a', '描述a') # 点击列表中的编辑 self.safe_area_page.click_list_edit_button() # 断言 self.assertEqual(self.assert_text.safe_area_page_edit_text(), self.safe_area_page.get_text_after_click_edit()) # 输入内容保存 self.safe_area_page.click_cancel_edit() # 点击列表中的删除 self.safe_area_page.click_list_delete_button() # 取消 self.safe_area_page.click_cancel_detele_button() # 点击列表中的删除 self.safe_area_page.click_list_delete_button() # 关闭 self.safe_area_page.click_close_detele_button() # 点击列表中的编辑 self.safe_area_page.click_list_edit_button() # 点击关联列表中的删除 self.safe_area_page.click_del_in_fences_edit_page() # 获取文本 text = self.safe_area_page.get_text_in_fence_edit_page_after_click_del( ) # 断言 self.assertEqual(text, "请选择要删除的记录") # 关闭 self.safe_area_page.click_close_detele_buttons() cursor.close() connect.close()
class TestCase132MarkPaging(unittest.TestCase): """ web_autotest账号,标注点页面分页功能 """ # author:邓肖斌 def setUp(self): self.driver = AutomateDriverServer(choose='chrome') self.base_url = self.driver.base_url self.base_page = BasePageServer(self.driver, self.base_url) self.log_in_base = LogInBaseServer(self.driver, self.base_url) self.safe_area_page = SafeAreaPage(self.driver, self.base_url) self.base_page.open_page() self.base_page.click_chinese_button() self.driver.set_window_max() self.log_in_base.log_in() self.safe_area_page.click_control_after_click_safe_area() self.safe_area_page_read_csv = SafeAreaPageReadCsv() def tearDown(self): self.driver.quit_browser() def test_case_mark_paging(self): # 断言url expect_url = self.base_url + "/safearea/geozonemap?flag=0" self.assertEqual(expect_url, self.driver.get_current_url()) self.safe_area_page.click_mark_button() sleep(2) # 获取总页数 total_number = self.safe_area_page.get_total_page_number_mark() if total_number == '0': print('无数据!') elif total_number == '1': print('就一页!') else: # 下一页 self.safe_area_page.click_next_page_mark() self.assertEqual('2', self.safe_area_page.get_current_page_number_mark()) # 点击上一页 self.safe_area_page.click_ago_page_mark() self.assertEqual('1', self.safe_area_page.get_current_page_number_mark()) # 点击尾页 self.safe_area_page.click_last_page_mark() self.assertEqual(self.safe_area_page.get_current_page_number_mark(), self.safe_area_page.get_total_page_number_mark()) # 点击首页 self.safe_area_page.clcik_first_page_mark() self.assertEqual('1', self.safe_area_page.get_current_page_number_mark())