def setUp(self):
        # 前置条件
        # 实例化对象
        self.driver = AutomateDriver()
        self.base_url = self.driver.base_url
        self.base_page = BasePage(self.driver, self.base_url)
        self.statistical_form_page = StatisticalFormPage(
            self.driver, self.base_url)
        self.statistical_form_page_read_csv = StatisticalFormPageReadCsv()
        self.log_in_base = LogInBase(self.driver, self.base_url)
        self.connect_sql = ConnectSql()
        self.search_sql = SearchSql(self.driver, self.base_url)
        self.obd_form_page = ObdFormPage(self.driver, self.base_url)
        # 打开页面,填写用户名、密码、点击登录
        self.base_page.open_page()
        self.driver.set_window_max()
        self.driver.implicitly_wait(5)
        self.driver.clear_cookies()
        self.log_in_base.log_in_jimitest()
        self.assert_text = AssertText()

        # 登录之后点击控制台,然后点击设置
        self.statistical_form_page.click_control_after_click_statistical_form_page(
        )
        sleep(3)
class TestCase154ObdMileageForm(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.statistical_form_page = StatisticalFormPage(
            self.driver, self.base_url)
        self.statistical_form_page_read_csv = StatisticalFormPageReadCsv()
        self.log_in_base = LogInBase(self.driver, self.base_url)
        self.connect_sql = ConnectSql()
        self.search_sql = SearchSql(self.driver, self.base_url)
        self.obd_form_page = ObdFormPage(self.driver, self.base_url)
        # 打开页面,填写用户名、密码、点击登录
        self.base_page.open_page()
        self.driver.set_window_max()
        self.driver.implicitly_wait(5)
        self.driver.clear_cookies()
        self.log_in_base.log_in_jimitest()
        self.assert_text = AssertText()

        # 登录之后点击控制台,然后点击设置
        self.statistical_form_page.click_control_after_click_statistical_form_page(
        )
        sleep(3)

    def tearDown(self):
        # 退出浏览器
        self.driver.quit_browser()

    def test_case_obd_mileage_form(self):
        # 断言url
        expect_url_after_click_statistical_form = self.base_url + '/deviceReport/statisticalReport'
        self.assertEqual(
            expect_url_after_click_statistical_form,
            self.statistical_form_page.actual_url_after_statistical_form())

        # 点击obd统计的里程报表
        self.obd_form_page.click_obd_form_mileage_statistical_button()
        # 切换到odb里程统计的frame里面
        self.obd_form_page.switch_to_obd_mileage_statistical_frame()

        csv_file = self.statistical_form_page_read_csv.read_csv(
            'obd_milage_report_search_data.csv')
        csv_data = csv.reader(csv_file)
        is_header = True
        for row in csv_data:
            if is_header:
                is_header = False
                continue
            search_data = {
                'user_name': row[0],
                'choose_date': row[2],
                'begin_time': row[3],
                'end_time': row[4]
            }
            self.obd_form_page.add_data_to_search_obd_mileage_statistical_form(
                search_data)

            # 获取页面上设备的信息
            dev_name = self.obd_form_page.get_dev_name_in_obd_mileage_statistical_form(
            )
            dev_total_mile = self.obd_form_page.get_dev_total_mile_obd_mileage_statistical_form(
            )
            dev_avg_oil = self.obd_form_page.get_dev_avg_oil_obd_mileage_statistical_form(
            )
            dev_avg_speed = self.obd_form_page.get_avg_oil_obd_mileage_statistical_form(
            )
            dev_total_oil = self.obd_form_page.get_dev_total_oil_obd_mileage_statistical_form(
            )

            # 查询设备的名称
            sql_check_dev_name = self.obd_form_page.get_dev_name_in_sql(
                self.obd_form_page.search_imei())

            # 查询数据库的条数
            get_sql_total_number = self.obd_form_page.get_sql_total_number()
            get_web_total_number = self.obd_form_page.get_web_total_number()
            self.assertEqual(len(get_sql_total_number),
                             get_web_total_number[1])

            # 获取查询出来的 页数
            if get_web_total_number[0] != 0 and get_web_total_number[0] != 1:
                self.obd_form_page.click_first_page()
            total_page = self.obd_form_page.get_obd_list_total_page_number()
            if total_page == 0:
                self.assertEqual('0', dev_total_mile)
                self.assertEqual('0', dev_avg_oil)
                self.assertEqual('0', dev_avg_speed)
                self.assertEqual('0', dev_total_oil)

            elif total_page == 1:
                # 断言平均油耗
                # 查询设备的名称
                self.assertEqual(dev_name, sql_check_dev_name)
                count_avg_oil = '%.2f' % (
                    (float(dev_total_oil) / float(dev_total_mile)) * 100)
                self.assertEqual(count_avg_oil, dev_avg_oil)
                # 获取页面上的里程和耗油
                mile_and_oil_list = []
                per_page_total_number = self.obd_form_page.get_per_page_total_number(
                )
                for n in range(per_page_total_number):
                    mile_and_oil_list.append({
                        'mile':
                        float(
                            self.obd_form_page.
                            get_per_mile_in_obd_mileage_form(n)),
                        'oil':
                        float(
                            self.obd_form_page.get_per_oil_in_obd_mileage_form(
                                n)),
                    })
                print(mile_and_oil_list)
                total_mile = 0
                total_oil = 0
                for data in mile_and_oil_list:
                    total_mile += data['mile']
                    total_oil += data['oil']
                self.assertAlmostEqual(float(dev_total_mile), total_mile)
                self.assertAlmostEqual(float(dev_total_oil), total_oil)

                # 计算总时间 然后断言平均速度
                total_time = sum(get_sql_total_number)
                print(total_time)
                avg_speed = '%.2f' % ((float(dev_total_mile)) / float(
                    (float(total_time) / 3600)))
                self.assertEqual(avg_speed, dev_avg_speed)

            else:
                # 断言平均油耗
                self.assertEqual(dev_name, sql_check_dev_name)
                count_avg_oil = '%.2f' % (
                    (float(dev_total_oil) / float(dev_total_mile)) * 100)
                self.assertEqual(count_avg_oil, dev_avg_oil)
                mile_and_oil_list = []
                for i in range(total_page):
                    # 循环点击每一页
                    self.obd_form_page.click_per_page(i)
                    # 获取页面上的里程和耗油
                    per_page_total_number = self.obd_form_page.get_per_page_total_number(
                    )
                    for n in range(per_page_total_number):
                        mile_and_oil_list.append({
                            'mile':
                            float(
                                self.obd_form_page.
                                get_per_mile_in_obd_mileage_form(n)),
                            'oil':
                            float(
                                self.obd_form_page.
                                get_per_oil_in_obd_mileage_form(n)),
                        })
                total_mile = 0
                total_oil = 0
                for data in mile_and_oil_list:
                    total_mile += data['mile']
                    total_oil += data['oil']

                self.assertAlmostEqual(float(dev_total_mile), total_mile)
                self.assertAlmostEqual(float(dev_total_oil), total_oil)

                # 计算总时间 然后断言平均速度
                total_time = sum(get_sql_total_number)
                avg_speed = '%.2f' % ((float(dev_total_mile)) / float(
                    (float(total_time) / 3600)))
                self.assertEqual(avg_speed, dev_avg_speed)
        csv_file.close()
        self.driver.default_frame()
예제 #3
0
class TestCase186ObdTroubleForm(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.statistical_form_page = StatisticalFormPage(self.driver, self.base_url)
        self.statistical_form_page_read_csv = StatisticalFormPageReadCsv()
        self.log_in_base = LogInBase(self.driver, self.base_url)
        self.connect_sql = ConnectSql()
        self.search_sql = SearchSql(self.driver, self.base_url)
        self.obd_form_page = ObdFormPage(self.driver, self.base_url)
        # 打开页面,填写用户名、密码、点击登录
        self.base_page.open_page()
        self.driver.set_window_max()
        self.driver.implicitly_wait(5)
        self.driver.clear_cookies()
        self.log_in_base.log_in_jimitest()
        self.assert_text = AssertText()

        # 登录之后点击控制台,然后点击设置
        self.statistical_form_page.click_control_after_click_statistical_form_page()
        sleep(3)

    def tearDown(self):
        # 退出浏览器
        self.driver.quit_browser()

    def test_case_obd_trouble_form(self):
        # 断言url
        expect_url_after_click_statistical_form = self.base_url + '/deviceReport/statisticalReport'
        self.assertEqual(expect_url_after_click_statistical_form,
                         self.statistical_form_page.actual_url_after_statistical_form())

        # 点击obd统计的里程报表
        self.obd_form_page.click_obd_trouble_form_button()
        # 切换到odb里程统计的frame里面
        self.obd_form_page.switch_to_obd_trouble_form_frame()

        csv_file = self.statistical_form_page_read_csv.read_csv('obd_milage_report_search_data.csv')
        csv_data = csv.reader(csv_file)
        is_header = True
        for row in csv_data:
            if is_header:
                is_header = False
                continue
            search_data = {
                'user_name': row[0],
                'choose_date': row[2],
                'begin_time': row[3],
                'end_time': row[4]
            }
            self.obd_form_page.add_data_to_search_obd_trouble_form(search_data)

            # 获取页面上设备的信息
            dev_total_mile = self.obd_form_page.get_dev_total_mile_obd_vehicle_condition_form()
            dev_avg_oil = self.obd_form_page.get_dev_avg_oil_obd_vehicle_condition_form()
            dev_avg_speed = self.obd_form_page.get_avg_oil_obd_vehicle_condition_form()
            dev_total_oil = self.obd_form_page.get_dev_total_oil_obd_vehicle_condition_form()
            begin_time = self.obd_form_page.get_begin_time()
            end_time = self.obd_form_page.get_end_time()

            request_url = request_base_url()
            header = {
                '_method_': 'getObdVehicleCondition',
                'imeis': self.obd_form_page.search_imei(),
                'startTime': begin_time,
                'endTime': end_time,
                'type': 'carfault'
            }
            sleep(10)
            res_json = requests.post(request_url, data=header).json()

            total_page = self.obd_form_page.get_obd_list_total_page_number()
            if total_page == 0:
                self.assertEqual('0', dev_total_mile)
                self.assertEqual('0', dev_avg_oil)
                self.assertEqual('0', dev_avg_speed)
                self.assertEqual('0', dev_total_oil)

            elif total_page == 1:
                # 获取页面上的里程和耗油
                mile_and_oil_list = []
                per_page_total_number = self.obd_form_page.get_per_page_total_number()
                for n in range(per_page_total_number):
                    mile_and_oil_list.append({
                        'gpsTime': self.obd_form_page.get_gps_time_in_vehicle_condition_form(n),
                        'lng': float(self.obd_form_page.get_lot_in_trouble_form(n)),
                        'lat': float(self.obd_form_page.get_lat_in_trouble_form(n)),
                        'errorCode': self.obd_form_page.get_error_code_in_trouble_form(n)
                    })

                res_data = res_json['data']
                for data in res_data:
                    del data['acc'], data['addr'], data['batteryVoltage'], data['direction'], data[
                        'engineLoad'], data['fuelConsumption1'], data['fuelConsumption2'], data['gpsInfo'], data[
                        'gpsSpeed'], data['heatingTime'], \
                        data['idleTime'], data['imei'], data[
                        'maxSpeed'], data['oilPer'], data['rapidAcceleration'], data['rapidDeceleration'], data[
                        'rotatingSpeed'], data[
                        'speed'], data['throttlePosition'], data['totalMileage'], data['waterTemperature']
                print(mile_and_oil_list)
                print(res_data)
                self.assertEqual(mile_and_oil_list, res_data)
            else:
                mile_and_oil_list = []
                for i in range(total_page):
                    # 循环点击每一页
                    self.obd_form_page.click_per_page(i)
                    # 获取页面上的里程和耗油
                    per_page_total_number = self.obd_form_page.get_per_page_total_number()
                    for n in range(per_page_total_number):
                        mile_and_oil_list.append({
                            'gpsTime': self.obd_form_page.get_gps_time_in_vehicle_condition_form(n),
                            'lng': float(self.obd_form_page.get_lot_in_trouble_form(n)),
                            'lat': float(self.obd_form_page.get_lat_in_trouble_form(n)),
                            'errorCode': self.obd_form_page.get_error_code_in_trouble_form(n)
                        })

                res_data = res_json['data']
                for data in res_data:
                    del data['acc'], data['addr'], data['batteryVoltage'], data['direction'], data[
                        'engineLoad'], data['fuelConsumption1'], data['fuelConsumption2'], data['gpsInfo'], data[
                        'gpsSpeed'], data['heatingTime'], \
                        data['idleTime'], data['imei'], data[
                        'maxSpeed'], data['oilPer'], data['rapidAcceleration'], data['rapidDeceleration'], data[
                        'rotatingSpeed'], data[
                        'speed'], data['throttlePosition'], data['totalMileage'], data['waterTemperature']
                print(mile_and_oil_list)
                print(res_data)
                self.assertEqual(mile_and_oil_list, res_data)
        csv_file.close()
        self.driver.default_frame()
예제 #4
0
class TestCase184ObdTracelForm(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.statistical_form_page = StatisticalFormPage(
            self.driver, self.base_url)
        self.statistical_form_page_read_csv = StatisticalFormPageReadCsv()
        self.log_in_base = LogInBase(self.driver, self.base_url)
        self.connect_sql = ConnectSql()
        self.search_sql = SearchSql(self.driver, self.base_url)
        self.obd_form_page = ObdFormPage(self.driver, self.base_url)
        # 打开页面,填写用户名、密码、点击登录
        self.base_page.open_page()
        self.driver.set_window_max()
        self.driver.implicitly_wait(5)
        self.driver.clear_cookies()
        self.log_in_base.log_in_jimitest()
        self.assert_text = AssertText()

        # 登录之后点击控制台,然后点击设置
        self.statistical_form_page.click_control_after_click_statistical_form_page(
        )
        sleep(3)

    def tearDown(self):
        # 退出浏览器
        self.driver.quit_browser()

    def test_case_obd_tracel_form(self):
        # 断言url
        expect_url_after_click_statistical_form = self.base_url + '/deviceReport/statisticalReport'
        self.assertEqual(
            expect_url_after_click_statistical_form,
            self.statistical_form_page.actual_url_after_statistical_form())

        # 点击obd报表里面的行程报表
        self.obd_form_page.click_obd_form_tracel_statistical_button()
        # 切换到行程报表的frame
        self.obd_form_page.switch_to_obd_tracel_statistical_frame()

        csv_file = self.statistical_form_page_read_csv.read_csv(
            'obd_milage_report_search_data.csv')
        csv_data = csv.reader(csv_file)
        is_header = True
        for row in csv_data:
            if is_header:
                is_header = False
                continue
            data = {
                'user_name': row[0],
                'choose_date': row[2],
                'begin_time': row[3],
                'end_time': row[4]
            }
            self.obd_form_page.add_data_to_search_obd_tracel_statistical_form(
                data)
            # 获取页面上设备的信息
            dev_total_mile = self.obd_form_page.get_dev_total_mile_obd_tracel_statistical_form(
            )
            dev_avg_oil = self.obd_form_page.get_dev_avg_oil_obd_tracel_statistical_form(
            )
            dev_avg_speed = self.obd_form_page.get_avg_oil_obd_tracel_statistical_form(
            )
            dev_total_oil = self.obd_form_page.get_dev_total_oil_obd_tracel_statistical_form(
            )
            begin_time = self.obd_form_page.get_begin_time()
            end_time = self.obd_form_page.get_end_time()

            # 请求里程报表统计
            request_url = request_base_url()
            header = {
                '_method_': 'getObdTotalInfo',
                'imeis': self.obd_form_page.search_imei(),
                'startTime': begin_time,
                'endTime': end_time
            }
            print(header)
            req_json = requests.post(request_url, data=header).json()
            print(req_json)
            # 断言
            try:
                self.assertEqual(float(dev_total_mile),
                                 req_json['data'][0]['totalMileage'])
                self.assertEqual(
                    float(dev_avg_oil),
                    req_json['data'][0]['totalAvgFuelConsumption'])
                self.assertEqual(float(dev_avg_speed),
                                 req_json['data'][0]['totalAvgSpeed'])
                self.assertEqual(float(dev_total_oil),
                                 req_json['data'][0]['totalFuelConsumption'])
            except:
                self.assertEqual([None], req_json['data'])

            request_url = request_base_url()
            header = {
                '_method_': 'getObdTrip',
                'imeis': self.obd_form_page.search_imei(),
                'startTime': begin_time,
                'endTime': end_time
            }
            sleep(10)
            res_json = requests.post(request_url, data=header).json()

            total_page = self.obd_form_page.get_obd_list_total_page_number()
            if total_page == 0:
                self.assertEqual('0', dev_total_mile)
                self.assertEqual('0', dev_avg_oil)
                self.assertEqual('0', dev_avg_speed)
                self.assertEqual('0', dev_total_oil)

            elif total_page == 1:
                # 获取页面上的里程和耗油
                mile_and_oil_list = []
                per_page_total_number = self.obd_form_page.get_per_page_total_number(
                )
                for n in range(per_page_total_number):
                    mile_and_oil_list.append({
                        'startTime':
                        self.obd_form_page.get_start_time_in_tracel_form(n),
                        'endTime':
                        self.obd_form_page.get_end_time_in_tracel_form(n),
                        'tripTime':
                        self.obd_form_page.get_trip_time_in_tracel_form(n),
                        'mileage':
                        float(
                            self.obd_form_page.get_mileage_in_tracel_form(n)),
                        'totalFuelConsumption':
                        float(
                            self.obd_form_page.
                            get_total_fuel_consumption_in_tracel_form(n)),
                        'avgFuelConsumption':
                        float(
                            self.obd_form_page.
                            get_avg_fuel_consumption_in_tracel_form(n)),
                        "rapidAcceleration":
                        int(
                            self.obd_form_page.
                            get_rapid_acceleration_in_tracel_form(n)),
                        "rapidDeceleration":
                        int(
                            self.obd_form_page.
                            get_rapid_deceleration_in_tracel_form(n)),
                    })

                res_data = res_json['data']
                for data in res_data:
                    del data['endAddr'], data['endLat'], data['endLng'], data[
                        'imei'], data['maxSpeed'], data['startAddr'], data[
                            'startLat'], data['startLng'], data['avgSpeed']

                for data in res_data:
                    data['tripTime'] = self.obd_form_page.chang_time_formeat(
                        data['tripTime'])
                print(mile_and_oil_list)
                print(res_data)
                self.assertEqual(mile_and_oil_list, res_data)
            else:
                mile_and_oil_list = []
                for i in range(total_page):
                    # 循环点击每一页
                    self.obd_form_page.click_per_page(i)
                    # 获取页面上的里程和耗油
                    per_page_total_number = self.obd_form_page.get_per_page_total_number(
                    )
                    for n in range(per_page_total_number):
                        mile_and_oil_list.append({
                            'startTime':
                            self.obd_form_page.get_start_time_in_tracel_form(
                                n),
                            'endTime':
                            self.obd_form_page.get_end_time_in_tracel_form(n),
                            'tripTime':
                            self.obd_form_page.get_trip_time_in_tracel_form(n),
                            'mileage':
                            float(
                                self.obd_form_page.get_mileage_in_tracel_form(
                                    n)),
                            'totalFuelConsumption':
                            float(
                                self.obd_form_page.
                                get_total_fuel_consumption_in_tracel_form(n)),
                            'avgFuelConsumption':
                            float(
                                self.obd_form_page.
                                get_avg_fuel_consumption_in_tracel_form(n)),
                            "rapidAcceleration":
                            int(
                                self.obd_form_page.
                                get_rapid_acceleration_in_tracel_form(n)),
                            "rapidDeceleration":
                            int(
                                self.obd_form_page.
                                get_rapid_deceleration_in_tracel_form(n)),
                        })
                sleep(5)
                res_data = res_json['data']
                print(res_data)
                for data in res_data:
                    del data['startLng'], data['endLat'], data['endLng'], data[
                        'imei'], data['maxSpeed'], data['startAddr'], data[
                            'startLat'], data['endAddr'], data['avgSpeed']
                for data in res_data:
                    data['tripTime'] = self.obd_form_page.chang_time_formeat(
                        data['tripTime'])
                print(mile_and_oil_list)
                print(res_data)
                self.assertEqual(mile_and_oil_list, res_data)
        csv_file.close()
        self.driver.default_frame()
class TestCase510FormSearchObdVehicleConditionSearch(unittest.TestCase):
    # 测试 搜索 OBD报表 车况搜索
    def setUp(self):
        # 前置条件
        # 实例化对象
        self.driver = AutomateDriver()
        self.base_url = self.driver.base_url
        self.base_page = BasePage(self.driver, self.base_url)
        self.statistical_form_page = StatisticalFormPage(
            self.driver, self.base_url)
        self.statistical_form_page_read_csv = StatisticalFormPageReadCsv()
        self.log_in_base = LogInBase(self.driver, self.base_url)
        self.connect_sql = ConnectSql()
        self.search_sql = SearchSql(self.driver, self.base_url)
        self.obd_form_page = ObdFormPage(self.driver, self.base_url)
        # 打开页面,填写用户名、密码、点击登录
        self.base_page.open_page()
        self.driver.set_window_max()
        self.driver.implicitly_wait(5)
        self.driver.clear_cookies()
        self.log_in_base.log_in_jimitest()
        self.assert_text = AssertText()

        current_handle = self.driver.get_current_window_handle()
        self.statistical_form_page.click_control_after_click_statistical_form_page(
        )
        sleep(3)
        self.base_page.change_windows_handle(current_handle)

    def tearDown(self):
        self.driver.close_window()
        # 退出浏览器
        self.driver.quit_browser()

    def test_case_vehicle_condition_search(self):
        # 断言url
        expect_url_after_click_statistical_form = self.base_url + '/deviceReport/statisticalReport'
        self.assertEqual(
            expect_url_after_click_statistical_form,
            self.statistical_form_page.actual_url_after_statistical_form())

        # 点击obd统计的里程报表
        self.obd_form_page.click_obd_vehicle_condition_condition_form_button()
        # 切换到odb里程统计的frame里面
        self.obd_form_page.switch_to_obd_vehicle_condition_form_frame()

        csv_file = self.statistical_form_page_read_csv.read_csv(
            'obd_milage_report_search_data.csv')
        csv_data = csv.reader(csv_file)
        is_header = True
        for row in csv_data:
            if is_header:
                is_header = False
                continue
            search_data = {
                'user_name': row[0],
                'choose_date': row[2],
                'begin_time': row[3],
                'end_time': row[4]
            }
            self.obd_form_page.add_data_to_search_obd_vehicle_condition_form(
                search_data)

            # 获取页面上设备的信息
            dev_name = self.obd_form_page.get_dev_name_in_obd_vehicle_condition_form(
            )
            dev_total_mile = self.obd_form_page.get_dev_total_mile_obd_vehicle_condition_form(
            )
            dev_avg_oil = self.obd_form_page.get_dev_avg_oil_obd_vehicle_condition_form(
            )
            dev_avg_speed = self.obd_form_page.get_avg_oil_obd_vehicle_condition_form(
            )
            dev_total_oil = self.obd_form_page.get_dev_total_oil_obd_vehicle_condition_form(
            )

            # 查询设备的名称
            sql_check_dev_name = self.obd_form_page.get_dev_name_in_sql(
                self.obd_form_page.search_imei())
            # 查询数据库的条数
            get_sql_total_number = self.obd_form_page.get_sql_total_number_in_obd_vehicel_condition_form(
            )
            get_web_total_number = self.obd_form_page.get_web_total_number_in_vehicel_condition_form(
            )
            self.assertEqual(len(get_sql_total_number),
                             get_web_total_number[1])

            # 获取查询出来的 页数
            # if get_web_total_number[0] != 0 and get_web_total_number[0] != 1:
            #   self.obd_form_page.click_first_page()
            total_page = get_web_total_number[0]
            if total_page == 0:
                self.assertEqual('0', dev_total_mile)
                self.assertEqual('0', dev_avg_oil)
                self.assertEqual('0', dev_avg_speed)
                self.assertEqual('0', dev_total_oil)

            elif total_page == 1:
                # 断言平均油耗
                # 查询设备的名称
                self.assertEqual(dev_name, sql_check_dev_name)
                count_avg_oil = '%.2f' % (
                    (float(dev_total_oil) / float(dev_total_mile)) * 100)
                self.assertEqual(count_avg_oil, dev_avg_oil)
                # 获取页面上的里程和耗油
                mile_and_oil_list = []
                per_page_total_number = self.obd_form_page.get_per_page_total_number(
                )
                for n in range(per_page_total_number):
                    mile_and_oil_list.append({
                        'begin_time':
                        self.obd_form_page.
                        get_begin_time_in_vehicle_condition_form(n),
                        'speed':
                        float(
                            self.obd_form_page.
                            get_speed_in_vehicle_condition_form(n)),
                        'rotating_speed':
                        float(
                            self.obd_form_page.
                            get_rotating_speed_in_vehicle_condition_form(n)),
                        'water_temperature':
                        float(
                            self.obd_form_page.
                            get_water_temperature_in_vehicle_condition_form(
                                n)),
                        'battery_voltage':
                        float(
                            self.obd_form_page.
                            get_battery_voltage_in_vehicle_condition_form(n)),
                        'fuel':
                        float(
                            self.obd_form_page.
                            get_fuel_in_vehicle_condition_form(n)),
                        'total_mileage':
                        float(
                            self.obd_form_page.
                            get_total_mileage_in_vehicle_condition_form(n))
                    })
                '''total_mile = 0
                total_oil = 0
                for data in mile_and_oil_list:
                    total_mile += data['mile']
                    total_oil += data['oil']
                self.assertAlmostEqual(float(dev_total_mile), total_mile)
                self.assertAlmostEqual(float(dev_total_oil), total_oil)'''
                self.assertEqual(get_sql_total_number, mile_and_oil_list)

            else:
                # 断言平均油耗
                self.assertEqual(dev_name, sql_check_dev_name)
                count_avg_oil = '%.2f' % (
                    (float(dev_total_oil) / float(dev_total_mile)) * 100)
                self.assertEqual(count_avg_oil, dev_avg_oil)
                mile_and_oil_list = []
                for i in range(total_page):
                    # 循环点击每一页
                    self.obd_form_page.click_per_page(i)
                    # 获取页面上的里程和耗油
                    per_page_total_number = self.obd_form_page.get_per_page_total_number(
                    )
                    for n in range(per_page_total_number):
                        mile_and_oil_list.append({
                            'begin_time':
                            self.obd_form_page.
                            get_begin_time_in_vehicle_condition_form(n),
                            'speed':
                            float(
                                self.obd_form_page.
                                get_speed_in_vehicle_condition_form(n)),
                            'rotating_speed':
                            float(
                                self.obd_form_page.
                                get_rotating_speed_in_vehicle_condition_form(
                                    n)),
                            'water_temperature':
                            float(
                                self.obd_form_page.
                                get_water_temperature_in_vehicle_condition_form(
                                    n)),
                            'battery_voltage':
                            float(
                                self.obd_form_page.
                                get_battery_voltage_in_vehicle_condition_form(
                                    n)),
                            'fuel':
                            float(
                                self.obd_form_page.
                                get_fuel_in_vehicle_condition_form(n)),
                            'total_mileage':
                            float(
                                self.obd_form_page.
                                get_total_mileage_in_vehicle_condition_form(n))
                        })
                '''total_mile = 0
                total_oil = 0
                for data in mile_and_oil_list:
                    total_mile += data['mile']
                    total_oil += data['oil']
                self.assertAlmostEqual(float(dev_total_mile), total_mile)
                self.assertAlmostEqual(float(dev_total_oil), total_oil)'''
                self.assertEqual(get_sql_total_number, mile_and_oil_list)
        csv_file.close()
        self.driver.default_frame()