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)
コード例 #2
0
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()
コード例 #4
0
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)
コード例 #5
0
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)