class TestCase102DevManageDevDetailDevMileage(unittest.TestCase): def setUp(self): self.driver = AutomateDriver() self.base_url = self.driver.base_url self.base_page = BasePage(self.driver, self.base_url) self.dev_manage_page = DevManagePages(self.driver, self.base_url) self.driver.set_window_max() self.log_in_base = LogInBase(self.driver, self.base_url) self.dev_manage_page_read_csv = DevManagePageReadCsv() self.assert_text = AssertText() self.driver.wait(1) self.driver.clear_cookies() self.driver.wait(1) def tearDown(self): self.driver.quit_browser() def test_case_dev_manage_dev_detail_dev_mileage(self): # 打开途强在线首页-登录页 self.base_page.open_page() # 登录 self.log_in_base.log_in() # 点击进入设备管理 self.dev_manage_page.enter_dev_manage() self.dev_manage_page.click_edit_button() self.dev_manage_page.click_close_edit_button() self.dev_manage_page.click_edit_button() # 点击客户信息 self.dev_manage_page.click_cust_info_button() # 获取总里程的最大长度 dev_total_mileage_max_len = self.dev_manage_page.get_dev_total_mileage_max_len( ) self.assertEqual('10', dev_total_mileage_max_len) # 输入非数字 self.dev_manage_page.input_dev_total_mileage_in_dev_detail('1we23') # 获取异常的文字 text = self.assert_text.dev_total_mileage_text1() self.dev_manage_page.click_ensure() web_text = self.dev_manage_page.get_text_after_input_dev_total_mileage( ) self.assertEqual(text, web_text) # 输入大于999999 self.dev_manage_page.input_dev_total_mileage_in_dev_detail( '1000000000') # 获取异常的文字 text = self.assert_text.dev_total_mileage_text2() self.dev_manage_page.click_ensure() web_text = self.dev_manage_page.get_text_after_input_dev_total_mileage( ) self.assertEqual(text, web_text)
class TestCase97DevManageEditAccount(unittest.TestCase): def setUp(self): self.driver = AutomateDriver() self.base_url = self.driver.base_url self.base_page = BasePage(self.driver, self.base_url) self.dev_manage_page = DevManagePages(self.driver, self.base_url) self.driver.set_window_max() self.log_in_base = LogInBase(self.driver, self.base_url) self.dev_manage_page_read_csv = DevManagePageReadCsv() self.connect_sql = ConnectSql() self.assert_text = AssertText() self.driver.wait(1) self.driver.clear_cookies() self.driver.wait(1) def tearDown(self): self.driver.quit_browser() def test_case_dev_manage_edit_account(self): # 打开途强在线首页-登录页 self.base_page.open_page() # 登录 self.log_in_base.log_in() # 点击进入设备管理 self.dev_manage_page.enter_dev_manage() # 点击下级用户 self.dev_manage_page.click_next_user_in_dev_page() # 点击编辑用户 self.dev_manage_page.click_edit_account_button() self.dev_manage_page.click_close_edit_button() self.dev_manage_page.click_edit_account_button() self.dev_manage_page.switch_to_dev_edit_frame() # 搜索用户 self.dev_manage_page.search_account_in_edit_user() get_user_name_after_search = self.dev_manage_page.get_user_name_after_search_in_edit_user( ) up_user = self.dev_manage_page.get_up_user_edit_user_in_dev_page() self.assertIn(up_user, get_user_name_after_search) # 循环点击 for n in range(5): self.dev_manage_page.click_user_to_search_up_user_in_edit_user(n) up_user = self.dev_manage_page.get_up_user_edit_user_in_dev_page() get_user_name_after_search = self.dev_manage_page.get_user_name_after_search_in_edit_user( ) self.assertIn(up_user, get_user_name_after_search) self.driver.default_frame()
class TestCase96DevManageCheckAccountInfo(unittest.TestCase): def setUp(self): self.driver = AutomateDriver() self.base_url = self.driver.base_url self.base_page = BasePage(self.driver, self.base_url) self.dev_manage_page = DevManagePages(self.driver, self.base_url) self.driver.set_window_max() self.log_in_base = LogInBase(self.driver, self.base_url) self.dev_manage_page_read_csv = DevManagePageReadCsv() self.connect_sql = ConnectSql() self.assert_text = AssertText() self.driver.wait(1) self.driver.clear_cookies() self.driver.wait(1) def tearDown(self): self.driver.quit_browser() def test_case_dev_manage_check_account_info(self): # 打开途强在线首页-登录页 self.base_page.open_page() # 登录 self.log_in_base.log_in() # 点击进入设备管理 self.dev_manage_page.enter_dev_manage() # 循环点击 for n in range(5): self.dev_manage_page.click_per_account_in_dev_manage_page(n) # 获取点击后的用户账号 user_account = self.dev_manage_page.get_per_user_account_in_dev_manage_page( ) # 连接数据库,获取该账号的信息 get_account_info = self.dev_manage_page.get_account_info( user_account) # 断言用户信息 get_user_nickname_in_page = self.dev_manage_page.get_user_nickname_in_page( ) get_user_type_in_page = self.dev_manage_page.get_user_type_in_page( ) get_user_phone_in_page = self.dev_manage_page.get_user_phone_in_page( ) self.assertEqual(get_account_info['nickname'], get_user_nickname_in_page) if get_account_info['phone'] == None: self.assertEqual('', get_user_phone_in_page) else: self.assertEqual(get_account_info['phone'], get_user_phone_in_page) type = self.assert_text.log_in_page_account_type( get_account_info['type']) self.assertEqual(get_user_type_in_page, type) get_account_nickname_in_cust_tree = self.dev_manage_page.get_account_nickname_in_cust_tree( n) self.assertEqual(get_user_nickname_in_page, get_account_nickname_in_cust_tree) # 点击监控用户 current_handle = self.driver.get_current_window_handle() self.dev_manage_page.click_control_account_button() all_handles = self.driver.get_all_window_handles() for handle in all_handles: if handle != current_handle: self.driver.switch_to_window(handle) expect_url = self.driver.base_url + '/index' self.assertEqual(self.driver.get_current_url(), expect_url) self.driver.close_current_page() self.driver.switch_to_window(current_handle) # 点击编辑用户 edit_style = self.dev_manage_page.get_edit_style_in_dev_page() if edit_style == 'display: inline;': self.dev_manage_page.click_edit_account_button() self.dev_manage_page.click_close_edit_button() self.dev_manage_page.click_edit_account_button() self.dev_manage_page.switch_to_dev_edit_frame() # 验证打开的信息是否正确 # 分别获取上级客户、客户类型、客户名称、登录账号、电话 up_user = self.dev_manage_page.get_up_user_edit_user_in_dev_page( ) user_type = self.dev_manage_page.get_user_type_edit_user_in_dev_page( ) user_name = self.dev_manage_page.get_user_name_edit_user_in_dev_page( ) account = self.dev_manage_page.get_user_account_edit_in_dev_page( ) user_phone = self.dev_manage_page.get_user_phone_edit_in_dev_page( ) # 断言 self.assertEqual(type, user_type) self.assertEqual(user_name, get_user_nickname_in_page) self.assertEqual(account, user_account) if get_account_info['phone'] == None: self.assertEqual(user_phone, '') else: # self.assertEqual(user_phone, get_account_info['phone']) pass self.driver.default_frame() self.dev_manage_page.click_close_edit_button()
class TestCase87DevManageEditDev(unittest.TestCase): def setUp(self): self.driver = AutomateDriver() self.base_url = self.driver.base_url self.base_page = BasePage(self.driver, self.base_url) self.dev_manage_page = DevManagePages(self.driver, self.base_url) self.driver.set_window_max() self.log_in_base = LogInBase(self.driver, self.base_url) self.dev_manage_page_read_csv = DevManagePageReadCsv() self.driver.wait(1) self.driver.clear_cookies() self.driver.wait(1) def tearDown(self): self.driver.quit_browser() def test_case_dev_manage_edit_dev(self): # 打开途强在线首页-登录页 self.base_page.open_page() # 登录 self.log_in_base.log_in() # 点击进入设备管理 self.dev_manage_page.enter_dev_manage() imei_in_list = self.dev_manage_page.get_imei_in_list() active_time_in_list = self.dev_manage_page.get_active_time_in_list() expire_time_in_list = self.dev_manage_page.get_expire_time_in_list() dev_type_in_list = self.dev_manage_page.get_dev_type_in_list() dev_name_in_list = self.dev_manage_page.get_dev_name_in_list() dev_sim_in_list = self.dev_manage_page.get_dev_sim_in_list() dev_group_in_list = self.dev_manage_page.get_dev_group_in_list() # 点击批量 self.dev_manage_page.click_edit_button() self.dev_manage_page.click_close_edit_button() self.dev_manage_page.click_edit_button() # 判断打开的编辑信息是否正确 imei_in_detail = self.dev_manage_page.get_imei_in_detail() self.assertEqual(imei_in_list, imei_in_detail) active_time_in_detail = self.dev_manage_page.get_active_time_in_detail( ) self.assertEqual(active_time_in_list, active_time_in_detail) expire_time_in_detail = self.dev_manage_page.get_expire_time_in_detail( ) self.assertIn(expire_time_in_detail, expire_time_in_list) dev_type_in_detail = self.dev_manage_page.get_dev_type_in_detail() self.assertEqual(dev_type_in_list, dev_type_in_detail) dev_name_in_detail = self.dev_manage_page.get_dev_name_in_detail() self.assertEqual(dev_name_in_list, dev_name_in_detail) dev_sim_in_detail = self.dev_manage_page.get_dev_sim_in_detail() self.assertEqual(dev_sim_in_list, dev_sim_in_detail) dev_group_in_detail = self.dev_manage_page.get_dev_group_in_detail() self.assertEqual(dev_group_in_list, dev_group_in_detail) # 判断 设备imei、设备类型、激活时间、平台到期时间、iccid、imsi是不可以编辑的 imei_input = self.dev_manage_page.get_imei_input_value() self.assertEqual('true', imei_input) dev_type_input = self.dev_manage_page.get_dev_type_input_value() self.assertEqual('true', dev_type_input) active_time_input = self.dev_manage_page.get_active_time_input_value() self.assertEqual('true', active_time_input) expire_time_value = self.dev_manage_page.get_expire_time_value() self.assertEqual('true', expire_time_value) iccid_value = self.dev_manage_page.get_iccid_value() self.assertEqual('true', iccid_value) imsi_value = self.dev_manage_page.get_imsi_value() self.assertEqual('true', imsi_value) # 验证输入框的最大长度 dev_name_max_len = self.dev_manage_page.get_dev_name_max_len() self.assertEqual('50', dev_name_max_len) dev_sim_max_len = self.dev_manage_page.get_dev_sim_max_len() self.assertEqual('20', dev_sim_max_len) dev_remark_max_len = self.dev_manage_page.get_dev_remark_max_len() self.assertEqual('500', dev_remark_max_len) # 点击客户信息 self.dev_manage_page.click_cust_info_button() # 验证输入框的最大长度 driver_name_max_len = self.dev_manage_page.get_driver_name_max_len() self.assertEqual('20', driver_name_max_len) driver_phone_max_len = self.dev_manage_page.click_driver_phone_max_len( ) self.assertEqual('20', driver_phone_max_len) driver_vehicle_number_max_len = self.dev_manage_page.driver_vehicle_number_max_len( ) self.assertEqual('50', driver_vehicle_number_max_len) driver_sn_max_len = self.dev_manage_page.get_driver_sn_max_len() self.assertEqual('50', driver_sn_max_len) driver_car_frame_max_len = self.dev_manage_page.driver_car_frame_max_len( ) self.assertEqual('50', driver_car_frame_max_len) driver_engine_number_max_len = self.dev_manage_page.get_driver_engine_number_max_len( ) self.assertEqual('100', driver_engine_number_max_len) dev_install_address_max_len = self.dev_manage_page.get_dev_install_address_max_len( ) self.assertEqual('200', dev_install_address_max_len) dev_install_company_max_len = self.dev_manage_page.get_dev_install_company_max_len( ) self.assertEqual('100', dev_install_company_max_len) dev_install_position_max_len = self.dev_manage_page.get_dev_install_position_max_len( ) self.assertEqual('200', dev_install_position_max_len) dev_install_personnel_max_len = self.dev_manage_page.get_dev_install_personnel_max_len( ) self.assertEqual('50', dev_install_personnel_max_len) dev_color_max_len = self.dev_manage_page.get_color_max_len() self.assertEqual('50', dev_color_max_len)
class TestCase76DevManageDevOperationNOActiveAndStop(unittest.TestCase): def setUp(self): self.driver = AutomateDriver() self.base_url = self.driver.base_url self.base_page = BasePage(self.driver, self.base_url) self.dev_manage_page = DevManagePages(self.driver, self.base_url) self.account_center_page_navi_bar = AccountCenterNaviBarPages( self.driver, self.base_url) self.log_in_base = LogInBase(self.driver, self.base_url) self.dev_manage_page_read_csv = DevManagePageReadCsv() self.connect_sql = ConnectSql() self.search_sql = SearchSql() self.driver.set_window_max() self.driver.wait(1) self.driver.clear_cookies() self.driver.wait(1) def tearDown(self): self.driver.quit_browser() def test_dev_manage_dev_operation_noactive_and_stop(self): # 打开途强在线首页-登录页 self.base_page.open_page() # 登录 self.log_in_base.log_in() self.dev_manage_page.enter_dev_manage() # 选择已激活和开机的设备 self.dev_manage_page.choose_dev_noactive_and_stop() self.dev_manage_page.click_ensure() sleep(4) imei = self.dev_manage_page.get_imei_number() self.dev_manage_page.click_edit_button() self.dev_manage_page.click_close_edit_button() self.dev_manage_page.click_edit_button() csv_file = self.dev_manage_page_read_csv.read_csv( 'dev_operation_data.csv') csv_data = csv.reader(csv_file) for row in csv_data: self.data = { 'dev_name': row[0], 'sim': row[1], 'mark': row[2], 'd_name': row[3], 'd_phone': row[4], 'plate_numbers': row[5], 'iccid': row[6], 'sn': row[7], 'vin': row[8], 'engine_number': row[9], 'install_time': row[10], 'install_adress': row[11], 'install_comp': row[12], 'install_preson': row[13] } self.dev_manage_page.add_data_to_edit_dev_detila(self.data) # 验证是否修改成功 sleep(4) text = self.dev_manage_page.get_dev_name() self.assertEqual(self.data['dev_name'], text) csv_file.close() # 点击查看位置 current_handle = self.driver.get_current_window_handle() self.dev_manage_page.click_look_place_button() all_handles = self.driver.get_all_window_handles() for handle in all_handles: if handle != current_handle: self.driver.switch_to_window(handle) sleep(2) expect_url = self.base_url + "/console" self.assertEqual(expect_url, self.driver.get_current_url()) # dev_name = self.dev_manage_page.get_dev_name_after_click_console() # self.assertEqual(self.data['dev_name'], dev_name) self.driver.close_current_page() self.driver.switch_to_window(current_handle) sleep(2)
class TestCase79DevManageDevOperationActiveAndStart(unittest.TestCase): def setUp(self): self.driver = AutomateDriver() self.base_url = self.driver.base_url self.base_page = BasePage(self.driver, self.base_url) self.dev_manage_page = DevManagePages(self.driver, self.base_url) self.account_center_page_navi_bar = AccountCenterNaviBarPages( self.driver, self.base_url) self.log_in_base = LogInBase(self.driver, self.base_url) self.dev_manage_page_read_csv = DevManagePageReadCsv() self.connect_sql = ConnectSql() self.search_sql = SearchSql() self.assert_text = AssertText() self.driver.set_window_max() self.driver.wait(1) self.driver.clear_cookies() self.driver.wait(1) def tearDown(self): self.driver.quit_browser() def test_dev_manage_dev_operation_active_and_start(self): '''测试设备管理-设备搜索-by imei+设备名称+设备型号+车牌号+车架号+SIM''' # 打开途强在线首页-登录页 self.base_page.open_page() # 登录 self.log_in_base.log_in() self.dev_manage_page.enter_dev_manage() # 选择已激活和开机的设备 self.dev_manage_page.choose_dev_active_and_statr() self.dev_manage_page.click_ensure() imei = self.dev_manage_page.get_imei_number() self.dev_manage_page.click_edit_button() self.dev_manage_page.click_close_edit_button() self.dev_manage_page.click_edit_button() csv_file = self.dev_manage_page_read_csv.read_csv( 'dev_operation_data.csv') csv_data = csv.reader(csv_file) for row in csv_data: self.data = { 'dev_name': row[0], 'sim': row[1], 'mark': row[2], 'd_name': row[3], 'd_phone': row[4], 'plate_numbers': row[5], 'iccid': row[6], 'sn': row[7], 'vin': row[8], 'engine_number': row[9], 'install_time': row[10], 'install_adress': row[11], 'install_comp': row[12], 'install_preson': row[13] } self.dev_manage_page.add_data_to_edit_dev_detila(self.data) # 验证是否修改成功 sleep(3) text = self.dev_manage_page.get_dev_name() self.assertEqual(self.data['dev_name'], text) csv_file.close() # 点击查看位置 current_handle = self.driver.get_current_window_handle() self.dev_manage_page.click_look_place_button() all_handles = self.driver.get_all_window_handles() for handle in all_handles: if handle != current_handle: self.driver.switch_to_window(handle) sleep(2) expect_url = self.base_url + "/console" self.assertEqual(expect_url, self.driver.get_current_url()) # dev_name = self.dev_manage_page.get_dev_name_after_click_console() # self.assertEqual(self.data['dev_name'], dev_name) self.driver.close_current_page() self.driver.switch_to_window(current_handle) sleep(2) # 点击轨迹回放 self.dev_manage_page.click_track_playback_button() all_handles = self.driver.get_all_window_handles() for handle in all_handles: if handle != current_handle: self.driver.switch_to_window(handle) sleep(2) expect_url = self.base_url + "/trackreplay/locus?imei=%s" % imei self.assertEqual(expect_url, self.driver.get_current_url()) text = self.dev_manage_page.click_track_playback_get_text() self.assertEqual(self.assert_text.dev_page_track_replay_text(), text) self.driver.close_current_page() self.driver.switch_to_window(current_handle) sleep(2) # 点行车记录 self.dev_manage_page.click_driving_recond_button() all_handles = self.driver.get_all_window_handles() for handle in all_handles: if handle != current_handle: self.driver.switch_to_window(handle) sleep(2) expect_url = self.base_url + "/drivingrecord/driving?imei=%s" % imei self.assertEqual(expect_url, self.driver.get_current_url()) text = self.dev_manage_page.click_driving_recond_get_text() self.assertEqual( self.assert_text.dev_page_driving_record_text(), text) self.driver.close_current_page() self.driver.switch_to_window(current_handle) sleep(2) # 点街景 self.dev_manage_page.click_street_scape_button() all_handles = self.driver.get_all_window_handles() for handle in all_handles: if handle != current_handle: self.driver.switch_to_window(handle) sleep(2) expect_url = self.base_url + "/trackpreset/tracking/%s?isTracking=1" % imei self.assertEqual(expect_url, self.driver.get_current_url()) text = self.dev_manage_page.click_street_scape_get_text() self.assertIn(self.assert_text.dev_page_track_preset_text(), text) self.driver.close_current_page() self.driver.switch_to_window(current_handle) sleep(2) # 点查看告警 self.dev_manage_page.click_look_alarm_button() all_handles = self.driver.get_all_window_handles() for handle in all_handles: if handle != current_handle: self.driver.switch_to_window(handle) sleep(2) expect_url = self.base_url + "/deviceReport/statisticalReport" self.assertEqual(expect_url, self.driver.get_current_url()) text = self.dev_manage_page.click_look_alarm_get_text() self.assertEqual( self.assert_text.account_center_page_alarm_details_text(), text) self.driver.close_current_page() self.driver.switch_to_window(current_handle) sleep(2)