class TestCase81DevManageBatchUploadPictures(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_batch_upload_pictures(self):
        # 打开途强在线首页-登录页
        self.base_page.open_page()
        # 登录
        self.log_in_base.log_in()
        # 点击进入设备管理
        self.dev_manage_page.enter_dev_manage()

        # 点击批量
        self.dev_manage_page.click_batch_upload_pictures_button()
        self.dev_manage_page.click_close_batch_upload_pictures_button()

        self.dev_manage_page.click_batch_upload_pictures_button()
        self.dev_manage_page.click_cancel_batch_upload_pictures_button()

        self.dev_manage_page.click_batch_upload_pictures_button()
        self.dev_manage_page.click_ensure_upload()
class TestCase05UserCenterLogout(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.login_page = LoginPage(self.driver, self.base_url)
        self.user_center = UserCenter(self.driver, self.base_url)
        self.log_in_page_read_csv = LogInPageReadCsv()
        self.driver.set_window_max()
        self.connect_sql = ConnectSql()
        self.driver.wait(1)
        self.driver.clear_cookies()
        self.driver.wait(1)

    def tearDown(self):
        self.driver.quit_browser()

    def test_user_center_logout(self):
        '''测试用户中心退出登录功能'''
        self.base_page.open_page()
        self.login_page.test_user_login()

        # 取消退出登录
        self.user_center.logout_dismiss()

        # 关闭退出登录
        self.user_center.logout_close()

        # 确认退出登录
        self.user_center.logout()
class TestCase04LoginWithTester(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.login_page = LoginPage(self.driver, self.base_url)
        self.user_center = UserCenter(self.driver, self.base_url)
        self.log_in_page_read_csv = LogInPageReadCsv()
        self.driver.set_window_max()
        self.connect_sql = ConnectSql()
        self.driver.wait(1)
        self.driver.clear_cookies()
        self.driver.wait(1)

    def tearDown(self):
        self.driver.quit_browser()

    def test_user_login_exception(self):
        '''测试体验账号登录'''

        # 打开风控首页-登录页
        self.base_page.open_page()

        # 点击“我要体验”
        self.login_page.taste()

        # 判断登录成功后招呼栏的用户名是否正确
        username = self.user_center.get_username()

        self.assertEqual('小明', username, '登录成功后招呼栏的用户名错误')

        # 成功退出系统
        sleep(2)
        self.user_center.logout()
class TestCase103DevManageDevFence(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_103_dev_manage_dev_fence(self):
        # 打开途强在线首页-登录页
        self.base_page.open_page()
        # 登录
        self.log_in_base.log_in()
        # 点击进入设备管理
        self.dev_manage_page.enter_dev_manage()

        # 搜索设备564123456789567
        self.dev_manage_page.search_dev_in_dev_manage_page('121201234567889')
        self.dev_manage_page.click_look_dev_fence_in_dev_page()

        # 判断进出围栏是否勾选
        in_fence = self.dev_manage_page.get_in_fence_select_in_look_fence_page(
        )
        out_fence = self.dev_manage_page.get_out_fence_select_in_look_fence_page(
        )
        if in_fence == True:
            self.dev_manage_page.click_in_fence_input_checkbox()
            in_fence = self.dev_manage_page.get_in_fence_select_in_look_fence_page(
            )
            self.assertEqual(False, in_fence)
        else:
            self.dev_manage_page.click_in_fence_input_checkbox()
            in_fence = self.dev_manage_page.get_in_fence_select_in_look_fence_page(
            )
            self.assertEqual(True, in_fence)

        if out_fence == True:
            self.dev_manage_page.click_out_fence_input_checkbox()
            out_fence = self.dev_manage_page.get_out_fence_select_in_look_fence_page(
            )
            self.assertEqual(False, out_fence)
        else:
            self.dev_manage_page.click_out_fence_input_checkbox()
            out_fence = self.dev_manage_page.get_out_fence_select_in_look_fence_page(
            )
            self.assertEqual(True, out_fence)

        # 点击保存
        # self.dev_manage_page.click_ensure()
        # 点击取消
        self.dev_manage_page.click_cancels()
Exemplo n.º 5
0
class TestCase122UserSearchTransferUser(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.global_dev_search_page = GlobalDevSearchPage(
            self.driver, self.base_url)
        self.account_center_page_navi_bar = AccountCenterNaviBarPages(
            self.driver, self.base_url)
        self.driver.set_window_max()
        self.global_account_search_page = GlobalAccountSearchPage(
            self.driver, self.base_url)
        self.log_in_base = LogInBase(self.driver, self.base_url)
        self.global_search_page_read_csv = GlobleSearchPageReadCsv()
        self.search_sql = SearchSql()
        self.driver.wait(1)
        self.connect_sql = ConnectSql()
        self.assert_text = AssertText()
        self.driver.clear_cookies()
        self.driver.wait(1)

    def tearDown(self):
        self.driver.quit_browser()

    def test_case_user_search_transfer_user(self):
        # 打开途强在线首页-登录页
        self.base_page.open_page()
        self.log_in_base.log_in()
        # 点击账号中心
        self.log_in_base.click_account_center_button()
        self.global_dev_search_page.click_easy_search()
        # 关闭
        self.global_dev_search_page.close_search()
        sleep(2)

        self.global_dev_search_page.click_easy_search()

        # 选择用户搜索
        self.global_dev_search_page.click_user_search_buttons()

        # 获取列表中第二个用户的账号
        self.global_dev_search_page.swith_to_search_frame()
        get_second_user_account = self.global_account_search_page.get_second_user_account_after_search_user(
        )
        # 点击详情
        self.global_account_search_page.click_user_detail_button()
        # 点击销售设备
        self.global_account_search_page.click_transfer_user_button_in_user_detail_button(
        )
        # 选择的用户是该用户(用户详情所属的用户)或其下级用户,提示“选择的用户不能作为上级用户”
        self.global_account_search_page.search_user_to_transfer_user_in_user_detail(
            get_second_user_account)
        get_text = self.global_account_search_page.get_text_after_click_transfer_user(
        )
        self.assertEqual(
            self.assert_text.the_selected_user_cannot_be_the_superior(),
            get_text)
Exemplo n.º 6
0
class TestCase127DevSearchIssuedCommand(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.global_dev_search_page = GlobalDevSearchPage(
            self.driver, self.base_url)
        self.account_center_page_navi_bar = AccountCenterNaviBarPages(
            self.driver, self.base_url)
        self.driver.set_window_max()
        self.global_account_search_page = GlobalAccountSearchPage(
            self.driver, self.base_url)
        self.log_in_base = LogInBase(self.driver, self.base_url)
        self.global_search_page_read_csv = GlobleSearchPageReadCsv()
        self.search_sql = SearchSql()
        self.driver.wait(1)
        self.connect_sql = ConnectSql()
        self.assert_text = AssertText()
        self.driver.clear_cookies()
        self.driver.wait(1)

    def tearDown(self):
        self.driver.quit_browser()

    def test_case_dev_search_issued_command(self):
        # 打开途强在线首页-登录页
        self.base_page.open_page()
        self.log_in_base.log_in()
        self.log_in_base.click_account_center_button()
        self.global_dev_search_page.click_easy_search()
        # 关闭
        self.global_dev_search_page.close_search()
        sleep(2)
        self.global_dev_search_page.click_easy_search()
        self.global_dev_search_page.click_dev_searchs()
        # 选择设备搜索
        sleep(5)
        self.global_dev_search_page.swith_to_search_frame()
        sleep(5)
        # 点击详情
        self.global_dev_search_page.click_dev_detail_after_search_dev()

        get_imei = self.global_dev_search_page.get_imei_in_dev_detail()
        get_dev_name = self.global_dev_search_page.get_dev_types_in_dev_detail(
        )

        # 点击设备指令
        self.global_dev_search_page.clcik_dev_command_button()

        get_imei_in_command_page = self.global_dev_search_page.get_dev_imei_in_command_page(
        )
        get_dev_name_in_command_page = self.global_dev_search_page.get_dev_name_in_command_page(
        )

        self.assertEqual(get_imei, get_imei_in_command_page)
        self.assertEqual(get_dev_name, get_dev_name_in_command_page)
class TestCase95DevManageBatchSaleByNoDev(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.assert_text = AssertText()
        self.driver.wait(1)

    def tearDown(self):
        self.driver.quit_browser()

    def test_case_dev_manage_batch_sale_by_no_dev(self):
        # 打开途强在线首页-登录页
        self.base_page.open_page()
        self.log_in_base.log_in()
        # 点击进入设备管理
        self.dev_manage_page.enter_dev_manage()
        # 点击批量
        self.dev_manage_page.click_batch_sale_button()
        self.dev_manage_page.click_close_batch_sale_button()
        self.dev_manage_page.click_batch_sale_button()
        # 验证界面
        get_sale_title = self.dev_manage_page.get_sale_title_text_in_sale_dev()
        self.assertEqual(self.assert_text.batch_sale_text(), get_sale_title)

        # 搜索框输入多个设备IMEI,点击添加(设备之间用enter键、逗号隔开)
        self.dev_manage_page.add_imei_in_sale_dev_page(
            '121201234567889,867597011453591')
        get_dev_in_list_number = self.dev_manage_page.get_dev_in_list_number()
        self.assertEqual(2, get_dev_in_list_number)

        # 搜索框输入多个设备IMEI,点击添加(设备之间不用enter键、逗号隔开,而用空格隔开)
        self.dev_manage_page.add_imei_in_sale_dev_page(
            '121201234567889867597011453591')
        add_dev_state = self.dev_manage_page.add_dev_after_fail_state()
        self.assertEqual(self.assert_text.dev_page_fail_text(), add_dev_state)
        add_dev_reason = self.dev_manage_page.add_dev_after_fail_reason()
        self.assertEqual(self.assert_text.dev_page_inexistence_text(),
                         add_dev_reason)
        self.dev_manage_page.click_close_fails()

        # 不选择销售对象进行销售
        self.dev_manage_page.click_sale_button()
        # text = self.dev_manage_page.get_error_text_after_ensure()
        # self.assertEqual(self.assert_text.glob_search_please_add_account_text(), text)

        # 点击重置的按钮
        self.dev_manage_page.click_clear_button_in_dev_sale()
        get_dev_in_list_number = self.dev_manage_page.get_dev_in_list_number()
        self.assertEqual(0, get_dev_in_list_number)
Exemplo n.º 8
0
class TestCase04UserCenterModifyPassword(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.login_page = LoginPage(self.driver, self.base_url)
        self.user_center = UserCenter(self.driver, self.base_url)
        self.log_in_page_read_csv = LogInPageReadCsv()
        self.user_center_read_csv = UserCenterReadCsv()
        self.driver.set_window_max()
        self.connect_sql = ConnectSql()
        self.driver.wait(1)
        self.driver.clear_cookies()
        self.driver.wait(1)

        # 打开途强在线首页-登录页
        self.base_page.open_page()
        sleep(1)
        # 登录账号
        self.login_page.test_user_login()

    def tearDown(self):
        self.driver.quit_browser()

    def test_user_center_modify_password(self):
        # 通过csv测试修改密码功能

        # 点击打开修改密码框
        self.user_center.click_edit_password()

        csv_file = self.user_center_read_csv.read_csv(
            "modify_password_exception.csv")
        csv_data = csv.reader(csv_file)
        for row in csv_data:
            data = {
                "old_password": row[0],
                "new_password": row[1],
                "new_password2": row[2],
                "pwd_prompt": row[3],
            }

            text = self.user_center.get_modify_pwd_exception_prompt(
                data['old_password'], data['new_password'],
                data['new_password2'])

            self.assertIn(data["pwd_prompt"], text, "修改密码,错误提示语显示不一致")

        csv_file.close()

        # 关闭修改密码框
        self.user_center.click_edit_password_close()

        # 退出登录
        self.user_center.logout()
class TestCase86DevManageAllSetUpWorkCommand(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.assert_text = AssertText()
        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_all_set_up_work_command(self):
        # 打开途强在线首页-登录页
        self.base_page.open_page()
        # 登录
        self.log_in_base.log_in()
        # 点击进入设备管理
        self.dev_manage_page.enter_dev_manage()

        # 点击本次查询全部设置工作模式
        # self.dev_manage_page.click_all_set_up_work_command()
        # 点击关闭
        # self.dev_manage_page.click_close_all_set_up_work_command()

        # 点击本次查询全部设置工作模式
        # self.dev_manage_page.click_all_set_up_work_command()
        # 点击取消
        # self.dev_manage_page.click_cancel_all_set_up_work_command()

        # 点击本次查询全部设置工作模式
        self.dev_manage_page.click_all_set_up_work_command()

        try:
            # 检查数量
            get_list_number = self.dev_manage_page.get_list_number()
            get_count_number = self.dev_manage_page.get_count_number()
            self.assertEqual(str(get_list_number), get_count_number)

            # 循环点击删除
            for n in range(get_list_number):
                self.dev_manage_page.delete_dev()

            # 点击发送指令
            self.dev_manage_page.click_issued_command_button()
        except:
            # 获取提示语
            text = self.dev_manage_page.get_text_after_click_all_issued_command(
            )
            self.assertEqual(self.assert_text.dev_type_is_different(), text)
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)
Exemplo n.º 11
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()
Exemplo n.º 12
0
class TestCase98DevManagePagingFunction(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_dev_manager_paging_function(self):
        '''测试设备管理-设备搜索-by imei'''

        # 打开途强在线首页-登录页
        self.base_page.open_page()
        # 登录
        self.log_in_base.log_in_jimitest()
        # 点击进入设备管理
        self.dev_manage_page.enter_dev_manage()

        # 全部设备_分页默认显示每页20条
        # get_paging_text = self.dev_manage_page.get_paging_text()
        # self.assertEqual(self.assert_text.per_20_page(), get_paging_text)

        # 获取总共有多少页
        total_page_number = self.dev_manage_page.get_total_page_number_in_dev_manager()

        if total_page_number == 1:
            get_up_page_state = self.dev_manage_page.get_up_page_state()
            self.assertEqual('active', get_up_page_state)

            get_next_page_state = self.dev_manage_page.get_next_page_state()
            self.assertEqual('active', get_next_page_state)

        elif total_page_number == 0:
            text = self.dev_manage_page.get_search_no_dev_name_text()
            self.assertIn(self.assert_text.account_center_page_no_data_text(), text)

        else:
            for n in range(total_page_number):
                self.dev_manage_page.click_per_page(n + 1)

        if total_page_number != 0:
            self.dev_manage_page.click_per_number()
class TestCase80DevManageSearchCustomer(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_search_customer(self):
        # 打开途强在线首页-登录页
        self.base_page.open_page()
        # 登录
        self.log_in_base.log_in()
        # 点击进入设备管理
        self.dev_manage_page.enter_dev_manage()

        # 循环点击5次
        for n in range(5):
            self.driver.click_element(
                'x,//*[@id="treeDemo_deviceManage_%s_span"]' % str(n + 2))
            sleep(2)
            # 判断数量
            get_account_dev_number = self.driver.get_text(
                'x,//*[@id="treeDemo_deviceManage_%s_span"]' % str(n + 2))
            number = get_account_dev_number.split('(')[1].split('/')[0]

            dev_number = self.dev_manage_page.get_dev_number()
            self.assertEqual(number, str(dev_number))

        # 搜索无数据
        self.dev_manage_page.search_customer('无数据')
        get_text = self.dev_manage_page.get_search_customer_no_data_text()
        self.assertIn(self.assert_text.account_center_page_no_data_text(),
                      get_text)
class TestCase84DevManageBatchIssuedCommand(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.assert_text = AssertText()
        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_batch_issued_command(self):
        # 打开途强在线首页-登录页
        self.base_page.open_page()
        # 登录
        self.log_in_base.log_in()
        # 点击进入设备管理
        self.dev_manage_page.enter_dev_manage()

        # 点击批量
        self.dev_manage_page.click_batch_issued_command_button()

        self.dev_manage_page.click_close_batch_batch_issued_command_button()

        self.dev_manage_page.click_batch_issued_command_button()

        # 获取选中的设备数量
        '''dev_number = self.dev_manage_page.get_dev_number_after_click_issued_command()
        dev_number_count = self.dev_manage_page.get_count_number_after_click_issued_command()
        self.assertEqual(str(dev_number), dev_number_count)'''
        # 获取提示语
        text = self.dev_manage_page.get_text_after_click_all_issued_command()
        self.assertEqual(self.assert_text.dev_type_is_different(), text)
class TestCase93DevManageUnbundleDev(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.driver.wait(1)
        self.driver.clear_cookies()
        self.driver.wait(1)

    def tearDown(self):
        self.driver.quit_browser()

    def test_case_dev_manage_unbundle_dev(self):
        # 打开途强在线首页-登录页
        self.base_page.open_page()
        # 登录
        self.log_in_base.log_in_jimitest()
        # 点击进入设备管理
        self.dev_manage_page.enter_dev_manage()

        # 搜索绑定的设备
        self.dev_manage_page.search_bundle_dev()
        #  获取第一个设备的imei
        imei_in_list = self.dev_manage_page.get_imei_in_list()

        # 点击解绑
        self.dev_manage_page.click_unbundle_dev()

        imei_in_list_again = self.dev_manage_page.get_imei_in_list()

        self.assertNotEqual(imei_in_list, imei_in_list_again, '解绑失败')
class TestCase100GlobAccountSearch(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.global_dev_search_page = GlobalDevSearchPage(self.driver, self.base_url)
        self.account_center_page_navi_bar = AccountCenterNaviBarPages(self.driver, self.base_url)
        self.driver.set_window_max()
        self.global_account_search_page = GlobalAccountSearchPage(self.driver, self.base_url)
        self.log_in_base = LogInBase(self.driver, self.base_url)
        self.global_search_page_read_csv = GlobleSearchPageReadCsv()
        self.search_sql = SearchSql()
        self.driver.wait(1)
        self.connect_sql = ConnectSql()
        self.driver.clear_cookies()
        self.driver.wait(1)

    def tearDown(self):
        self.driver.quit_browser()

    def test_global_account_search(self):
        # 打开途强在线首页-登录页
        self.base_page.open_page()
        self.log_in_base.log_in()
        self.log_in_base.click_account_center_button()
        current_account = self.log_in_base.get_log_in_account()
        self.global_dev_search_page.click_easy_search()
        # 关闭
        self.global_dev_search_page.close_search()
        sleep(2)

        self.global_dev_search_page.click_easy_search()
        # self.global_dev_search_page.click_account_search()

        # 度数据
        csv_file = self.global_search_page_read_csv.read_csv('global_search_account_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 = {
                'account_info': row[0]
            }
            self.global_dev_search_page.swith_to_search_frame()
            self.global_dev_search_page.account_easy_search(search_data)

            connect = self.connect_sql.connect_tuqiang_sql()
            # 创建数据库游标
            cur = connect.cursor()

            # 执行sql脚本查询当前登录账号的userId,fullParent
            get_id_sql = "select o.account,o.userId,o.fullParentId from user_info o where o.account = '" + current_account + "' ;"
            cur.execute(get_id_sql)
            # 读取数据
            user_relation = cur.fetchall()
            # 遍历数据
            for row in user_relation:
                user_relation_id = {
                    "account": row[0],
                    "userId": row[1],
                    "fullParent": row[2]
                }

                # 执行sql脚本,根据当前登录账号的userId,fullParent查询出当前账户的所有下级账户
                get_lower_account_sql = "select userId from user_info where fullParentId like" + \
                                        "'" + user_relation_id["fullParent"] + user_relation_id["userId"] + "%'" + ";"
                cur.execute(get_lower_account_sql)
                # 读取数据
                lower_account = cur.fetchall()
                lower_account_list = [user_relation_id["userId"]]
                for range1 in lower_account:
                    for range2 in range1:
                        lower_account_list.append(range2)
                lower_account_tuple = tuple(lower_account_list)

                get_total_sql = self.search_sql.search_account_sqls(lower_account_tuple, search_data)
                print(get_total_sql)
                cur.execute(get_total_sql)
                # 读取数据
                total_data = cur.fetchall()
                # 从数据tuple中获取最终查询记录统计条数
                total_list = []
                for range1 in total_data:
                    for range2 in range1:
                        total_list.append(range2)
                total = len(total_list)
                print('本次查询数据库的条数为:%s' % total)
                web_total = self.global_account_search_page.easy_search_results()
                print('本次查询页面的条数是:%s' % web_total)
                self.assertEqual(total, web_total)
                self.driver.default_frame()
            cur.close()
            connect.close()

        csv_file.close()
        self.global_dev_search_page.close_search()
Exemplo n.º 17
0
class TestCase04AccountLog(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.login_page = LoginPage(self.driver, self.base_url)
        self.user_center = UserCenter(self.driver, self.base_url)
        self.operation_log = OperationLog(self.driver, self.base_url)
        self.log_in_page_read_csv = LogInPageReadCsv()
        self.user_center_read_csv = UserCenterReadCsv()
        self.operation_log_read_csv = OperationLogReadCsv()
        self.driver.set_window_max()
        self.connect_sql = ConnectSql()
        self.driver.wait(1)
        self.driver.clear_cookies()
        self.driver.wait(1)

    def tearDown(self):
        self.driver.quit_browser()

    def test_account_log(self):
        # 测试账号管理记录

        # 打开风控首页-登录页
        self.base_page.open_page()
        sleep(1)
        # 登录账号
        self.login_page.test_log_login_user_normal()
        # 获取当前登录账号
        log_in_account = self.user_center.get_login_account()
        print(log_in_account)

        # 从数据库获取登录账号的客户名称、电话
        account_info = self.user_center.get_account_info_by_sql(log_in_account)
        print(account_info)

        # 获取修改资料里面的信息
        user_info = self.user_center.get_user_info()

        # 断言
        self.assertEqual(log_in_account, user_info['login_account'])
        self.assertEqual(account_info[1], user_info['name'])
        self.assertEqual(account_info[2], user_info['tel'])

        # 点击设置
        self.operation_log.click_setup()

        # 点击进入操作日志
        self.operation_log.click_operation_log()

        # 切入frame
        self.operation_log.switch_to_myframe()

        # 点击账号管理记录
        self.operation_log.click_account_log()

        csv_file = self.operation_log_read_csv.read_csv('account_log.csv')
        csv_data = csv.reader(csv_file)
        for row in csv_data:
            account_log = {
                "start_time": row[0],
                "end_time": row[1],
                "type": row[2],
            }

            # 输入时间段
            self.operation_log.account_input_time(account_log['start_time'],
                                                  account_log['end_time'])

            # 选择类型
            self.operation_log.account_choose_type(account_log['type'])

            # 点击搜索
            self.operation_log.account_click_search()
            '''# 获取搜索结果
            result_info = self.operation_log.get_account_log_search_result()
            print(result_info)


            # 获取数据库查询结果
            info = self.operation_log.get_account_log_search_result_by_sql(log_in_account,account_log['start_time'],account_log['end_time'])


            # 验证搜索结果是否一致
            self.assertEqual(result_info,info)'''

            # 点击重置
            self.operation_log.account_click_reset()

        # 跳出frame
        self.operation_log.switch_default()

        # 退出登录
        self.user_center.logout()
class TestCase01LoanCustomerInput(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.login_page = LoginPage(self.driver, self.base_url)
        self.user_center = UserCenter(self.driver, self.base_url)
        self.loan_customer = LoanCustomer(self.driver, self.base_url)
        self.log_in_page_read_csv = LogInPageReadCsv()
        self.user_center_read_csv = UserCenterReadCsv()
        self.loan_customer_read_csv = LoanCustomerReadCsv()
        self.driver.set_window_max()
        self.connect_sql = ConnectSql()
        self.driver.wait(1)
        self.driver.clear_cookies()
        self.driver.wait(1)



    def tearDown(self):
        self.driver.quit_browser()

    def test_user_center_modify_info(self):
        # 通过csv测试贷款客户信息录入


        csv_file = self.loan_customer_read_csv.read_csv('loan_customer_input_info.csv')
        csv_data = csv.reader(csv_file)
        for row in csv_data:
            loan_customer_input_info = {
                "name": row[0],
                "tel": row[1],
                "type": row[2],
                "ID": row[3],
                "sex": row[4],
                "com": row[5],
                "car_num": row[6],
                "model": row[7],
                "engi_num": row[8],
                "frame_num": row[9],
                "car_type": row[10],
                "loan_money": row[11],
                "loan_deadline": row[12],
                "current_balance": row[13],
                "pay_type": row[14],
                "pay_date": row[15],
                "contract_number": row[16],
                "imei": row[17],
                "install_address": row[18],
                "install_person": row[19],
            }


            # 打开风控首页-登录页
            self.base_page.open_page()
            sleep(1)
            # 登录账号
            self.login_page.test_user_login()
            # 获取当前登录账号
            log_in_account = self.user_center.get_login_account()
            print(log_in_account)

            # 从数据库获取登录账号的客户名称、电话
            account_info = self.user_center.get_account_info_by_sql(log_in_account)
            print(account_info)

            # 获取修改资料里面的信息
            user_info = self.user_center.get_user_info()

            # 断言
            self.assertEqual(log_in_account, user_info['login_account'])
            self.assertEqual(account_info[1], user_info['name'])
            self.assertEqual(account_info[2], user_info['tel'])


            # 点击进入贷款客户录入
            self.loan_customer.click_loan_customer_input()

            # 切入外层frame
            self.loan_customer.switch_to_1_frame()

            # 录入车主信息
            # 录入车主姓名
            self.loan_customer.input_owner_name(loan_customer_input_info['name'])

            # 录入车主电话
            self.loan_customer.input_owner_tel(loan_customer_input_info['tel'])

            # 选择车主证件类型
            self.loan_customer.choose_owner_ID_type(loan_customer_input_info['type'])

            # 输入车主证件号
            self.loan_customer.input_owner_ID(loan_customer_input_info['ID'])

            # 选择车主性别
            self.loan_customer.choose_owner_sex(loan_customer_input_info['sex'])

            # 选择车主贷款单位
            self.loan_customer.choose_owner_loan_com(loan_customer_input_info['com'])

            # 保存
            self.loan_customer.save_owner_info()

            # 验证是否保存成功


            # 录入车辆信息
            # 输入车牌号
            self.loan_customer.input_car_num(loan_customer_input_info['car_num'])

            # 输入车型
            self.loan_customer.input_car_model(loan_customer_input_info['model'])

            # 输入发动机号
            self.loan_customer.input_car_engi_num(loan_customer_input_info['engi_num'])

            # 输入车架号
            self.loan_customer.input_car_frame_num(loan_customer_input_info['frame_num'])

            # 选择车辆类型
            self.loan_customer.choose_car_type(loan_customer_input_info['car_type'])


            # 保存车辆信息
            self.loan_customer.save_car_info()

            # 验证是否保存成功


            # 录入贷款信息
            # 输入贷款日期
            self.loan_customer.input_loan_date()

            # 输入贷款金额
            self.loan_customer.input_loan_money(loan_customer_input_info['loan_money'])

            # 输入贷款期限
            self.loan_customer.input_loan_deadline(loan_customer_input_info['loan_deadline'])

            # 输入应还金额
            self.loan_customer.input_current_balance(loan_customer_input_info['current_balance'])

            # 选择还款方式
            self.loan_customer.choose_pay_type(loan_customer_input_info['pay_type'])

            # 选择还款日
            self.loan_customer.choose_pay_date(loan_customer_input_info['pay_date'])

            # 输入合同编号
            self.loan_customer.input_contract_number(loan_customer_input_info['contract_number'])

            # 保存贷款信息
            self.loan_customer.save_loan_info()

            # 验证是否保存成功


            # 录入安装设备
            # 点击安装设备
            self.loan_customer.click_install_dev()


            # 输入Imei
            self.loan_customer.input_dev_imei(loan_customer_input_info['imei'])

            # 选择安装时间
            self.loan_customer.choose_install_time()

            # 输入安装地址
            self.loan_customer.input_install_address(loan_customer_input_info['install_address'])

            # 输入安装人员
            self.loan_customer.input_install_person(loan_customer_input_info['install_person'])

            # 保存安装信息
            self.loan_customer.save_install_info()

            # 跳出frame1
            self.loan_customer.switch_out_frame1()

            # 验证是否保存成功



            # 退出登录
            self.user_center.logout()


        csv_file.close()
Exemplo n.º 19
0
class TestCase91DevManageShutDownByNextUser(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_shut_down_by_next_user(self):
        # 打开途强在线首页-登录页
        self.base_page.open_page()

        # 登录
        self.log_in_base.log_in()
        # 点击进入设备管理
        self.dev_manage_page.enter_dev_manage()

        # 搜索下级客户
        csv_file = self.dev_manage_page_read_csv.read_csv("search_account.csv")
        csv_data = csv.reader(csv_file)
        for row in csv_data:
            self.data = {'acc': row[0]}
        # 输入用户名搜索
        self.dev_manage_page.search_account(self.data['acc'])
        # 勾选包含下级,搜索
        self.dev_manage_page.search_dev()

        # 测试选中停机
        self.dev_manage_page.click_dev_in_list()

        # 点击选中停机
        self.dev_manage_page.click_select_shut_down()
        # 点击确定
        self.dev_manage_page.click_ensure()
        sleep(4)
        get_dev_status = self.dev_manage_page.get_dev_status_in_list()
        self.assertEqual(self.assert_text.dev_page_closing_down(),
                         get_dev_status)

        # 点击选中停机
        self.dev_manage_page.click_dev_in_list()
        self.dev_manage_page.click_select_shut_down()
        # 点击取消
        self.dev_manage_page.click_cancel()
        get_dev_status = self.dev_manage_page.get_dev_status_in_list()
        self.assertEqual(self.assert_text.dev_page_closing_down(),
                         get_dev_status)

        # 点击选中停机
        self.dev_manage_page.click_select_shut_down()
        # 点击关闭
        self.dev_manage_page.click_close()
        get_dev_status = self.dev_manage_page.get_dev_status_in_list()
        self.assertEqual(self.assert_text.dev_page_closing_down(),
                         get_dev_status)

        # 点击本次查询全部停机
        self.dev_manage_page.click_all_shut_down()
        self.dev_manage_page.click_ensure()
        sleep(4)

        # 断言
        get_all_page = self.dev_manage_page.get_all_pages()

        if get_all_page == 0:
            pass
        elif get_all_page == 1:
            per_number = self.dev_manage_page.get_per_number()
            for m in range(per_number):
                text = self.dev_manage_page.get_text_dev_status(m + 1)
                self.assertEqual(self.assert_text.dev_page_closing_down(),
                                 text)
        else:
            for n in range(get_all_page):
                self.dev_manage_page.click_per_page(n + 1)
                sleep(2)
                # 获取当前页面有多少条
                per_number = self.dev_manage_page.get_per_number()

                for m in range(per_number):
                    text = self.dev_manage_page.get_text_dev_status(m + 1)
                    self.assertEqual(self.assert_text.dev_page_closing_down(),
                                     text)
Exemplo n.º 20
0
class TestCase72DevManageDevSearchByInputData(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_dev_manage_dev_search_by_input_data(self):
        '''测试设备管理-设备搜索-by imei'''
        # 打开途强在线首页-登录页
        self.base_page.open_page()
        # 登录
        self.log_in_base.log_in()
        # 点击进入设备管理
        self.dev_manage_page.enter_dev_manage()
        self.dev_manage_page.click_more_button()

        # 车牌号输入框输入选中用户的设备车牌号包含的字符,点击搜索,点击导出
        dev_vehicle_number = '12'
        self.dev_manage_page.inpui_dev_vehicle_number_to_search(
            dev_vehicle_number)
        self.dev_manage_page.click_search_btn()
        connect_sql = ConnectSql()
        connect = connect_sql.connect_tuqiang_sql()
        cursor = connect.cursor()
        # 获取查询出来的条数
        number = self.dev_manage_page.get_total_page_number_in_dev_manager()
        for n in range(number):
            imei = self.dev_manage_page.get_imei_after_search(n)
            sql = "SELECT d.vehicleNumber FROM equipment_detail d WHERE d.imei = '%s';" % imei
            cursor.execute(sql)
            data = cursor.fetchall()
            vehicle_number = data[0][0]
            self.assertIn(dev_vehicle_number, vehicle_number)

        # 车牌号输入框输入选中用户的设备车牌号不包含的字符,点击搜索,点击导出
        dev_vehicle_number = '不存在的'
        self.dev_manage_page.inpui_dev_vehicle_number_to_search(
            dev_vehicle_number)
        self.dev_manage_page.click_search_btn()
        text = self.dev_manage_page.get_search_no_dev_name_text()
        self.assertIn(self.assert_text.account_center_page_no_data_texts(),
                      text)

        # 车架号输入框输入选中用户的设备车架号包含的字符,点击搜索,点击导出
        self.dev_manage_page.inpui_dev_vehicle_number_to_search('')
        dev_car_frame = '12'
        self.dev_manage_page.input_dev_car_frame_to_search(dev_car_frame)
        self.dev_manage_page.click_search_btn()
        sleep(2)
        # 获取查询出来的条数
        number = self.dev_manage_page.get_total_page_number_in_dev_manager()
        for n in range(number):
            imei = self.dev_manage_page.get_imei_after_search(n)
            sql = "SELECT d.carFrame FROM equipment_detail d WHERE d.imei = '%s';" % imei
            cursor.execute(sql)
            data = cursor.fetchall()
            vehicle_number = data[0][0]
            self.assertIn(dev_car_frame, vehicle_number)

        # 车架号输入框输入选中用户的设备车架号不包含的字符,点击搜索,点击导出
        dev_vehicle_number = '不存在的'
        self.dev_manage_page.input_dev_car_frame_to_search(dev_vehicle_number)
        self.dev_manage_page.click_search_btn()
        text = self.dev_manage_page.get_search_no_dev_name_text()
        self.assertIn(self.assert_text.account_center_page_no_data_texts(),
                      text)

        # SIM卡号输入框输入选中用户的设备车牌号包含的字符,点击搜索,点击导出
        self.dev_manage_page.input_dev_car_frame_to_search('')
        dev_sim = '12'
        self.dev_manage_page.input_dev_sim_to_search(dev_sim)
        self.dev_manage_page.click_search_btn()
        sleep(2)
        # 获取查询出来的条数
        number = self.dev_manage_page.get_total_page_number_in_dev_manager()
        for n in range(number):
            imei = self.dev_manage_page.get_imei_after_search(n)
            sql = "SELECT d.sim FROM equipment_mostly d WHERE d.imei = '%s';" % imei
            cursor.execute(sql)
            data = cursor.fetchall()
            sim_number = data[0][0]
            self.assertIn(dev_sim, sim_number)

        # SIM卡号输入框输入选中用户的设备车牌号不包含的字符,点击搜索,点击导出
        dev_sim_number = '不存在的'
        self.dev_manage_page.input_dev_sim_to_search(dev_sim_number)
        self.dev_manage_page.click_search_btn()
        text = self.dev_manage_page.get_search_no_dev_name_text()
        self.assertIn(self.assert_text.account_center_page_no_data_texts(),
                      text)

        # SN码输入框输入选中用户的设备车架号包含的字符,点击搜索,点击导出
        self.dev_manage_page.input_dev_sim_to_search('')
        dev_sn = '12'
        self.dev_manage_page.input_dev_sn_to_search(dev_sn)
        self.dev_manage_page.click_search_btn()
        sleep(2)
        # 获取查询出来的条数
        number = self.dev_manage_page.get_total_page_number_in_dev_manager()
        for n in range(number):
            imei = self.dev_manage_page.get_imei_after_search(n)
            sql = "SELECT d.sn FROM equipment_detail d WHERE d.imei = '%s';" % imei
            cursor.execute(sql)
            data = cursor.fetchall()
            sn_number = data[0][0]
            self.assertIn(dev_sn, sn_number)

        # SN码输入框输入选中用户的设备车架号不包含的字符,点击搜索,点击导出
        dev_sn_number = '不存在的'
        self.dev_manage_page.input_dev_sn_to_search(dev_sn_number)
        self.dev_manage_page.click_search_btn()
        text = self.dev_manage_page.get_search_no_dev_name_text()
        self.assertIn(self.assert_text.account_center_page_no_data_texts(),
                      text)
class TestCase94DevManageBatchSaleByMoreDev(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.assert_text = AssertText()
        self.driver.wait(1)

    def tearDown(self):
        self.driver.quit_browser()

    def test_case_dev_manage_batch_sale_by_more_dev(self):
        # 打开途强在线首页-登录页
        self.base_page.open_page()
        self.log_in_base.log_in()
        # 点击进入设备管理
        self.dev_manage_page.enter_dev_manage()
        # 选择多个设备点击批量销售
        self.dev_manage_page.choose_one_dev_to_search()
        self.dev_manage_page.choose_more_dev_to_search()
        # 点击批量
        self.dev_manage_page.click_batch_sale_button()
        self.dev_manage_page.click_close_batch_sale_button()
        self.dev_manage_page.click_batch_sale_button()
        # 验证界面
        get_sale_title = self.dev_manage_page.get_sale_title_text_in_sale_dev()
        self.assertEqual(self.assert_text.batch_sale_text(), get_sale_title)

        # 获取统计的数量和列表中的总数
        get_dev_number = self.dev_manage_page.get_dev_number_in_sale_dev()
        get_dev_in_list_number = self.dev_manage_page.get_dev_in_list_number()
        self.assertEqual(get_dev_number, str(get_dev_in_list_number))

        # 删除一个设备列表已添加的设备
        self.dev_manage_page.delete_one_dev_in_dev_list()
        get_dev_number = self.dev_manage_page.get_dev_number_in_sale_dev()
        get_dev_in_list_number = self.dev_manage_page.get_dev_in_list_number()
        self.assertEqual(get_dev_number, str(get_dev_in_list_number))

        # 输入所选账号下存在的未添加到已选设备列表的设备和已添加到已选设备列表的设备以及不存在的设备,121201234567889
        self.dev_manage_page.add_imei_in_sale_dev_page('121201234567889')
        sleep(2)
        get_dev_number = self.dev_manage_page.get_dev_number_in_sale_dev()
        get_dev_in_list_number = self.dev_manage_page.get_dev_in_list_number()
        self.assertEqual(get_dev_number, str(get_dev_in_list_number))

        # 删除一个设备列表已添加的设备后再添加该设备
        self.dev_manage_page.delete_one_devs_in_dev_list()
        get_dev_number = self.dev_manage_page.get_dev_number_in_sale_dev()
        get_dev_in_list_number = self.dev_manage_page.get_dev_in_list_number()
        self.assertEqual(get_dev_number, str(get_dev_in_list_number))

        self.dev_manage_page.add_imei_in_sale_dev_page('121201234567889')
        sleep(2)
        get_dev_number = self.dev_manage_page.get_dev_number_in_sale_dev()
        get_dev_in_list_number = self.dev_manage_page.get_dev_in_list_number()
        self.assertEqual(get_dev_number, str(get_dev_in_list_number))
class TestCase03UserCenterModifyPassword(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.login_page = LoginPage(self.driver, self.base_url)
        self.user_center = UserCenter(self.driver, self.base_url)
        self.log_in_page_read_csv = LogInPageReadCsv()
        self.user_center_read_csv = UserCenterReadCsv()
        self.driver.set_window_max()
        self.connect_sql = ConnectSql()
        self.driver.wait(1)
        self.driver.clear_cookies()
        self.driver.wait(1)

    def tearDown(self):
        self.driver.quit_browser()

    def test_user_center_modify_password(self):
        # 通过csv测试修改密码功能

        csv_file = self.user_center_read_csv.read_csv(
            'user_to_modify_password.csv')
        csv_data = csv.reader(csv_file)
        for row in csv_data:
            user_to_modify_password = {
                "account": row[0],
                "old_passwd": row[1],
                "new_passwd": row[2],
            }

            # 打开途强在线首页-登录页
            self.base_page.open_page()
            sleep(1)
            # 登录账号
            self.login_page.user_login(user_to_modify_password['account'],
                                       user_to_modify_password['old_passwd'])

            # 修改密码
            self.user_center.click_edit_password()
            self.user_center.input_old_password(
                user_to_modify_password['old_passwd'])
            self.user_center.input_new_password(
                user_to_modify_password['new_passwd'])
            self.user_center.input_password_again(
                user_to_modify_password['new_passwd'])

            # 确认
            self.user_center.click_edit_password_confirm()
            self.driver.wait()

            # 用旧密码登录,验证提示
            self.login_page.user_login(user_to_modify_password['account'],
                                       user_to_modify_password['old_passwd'])
            exception_text = self.login_page.get_exception_text()
            self.assertEqual('登录密码验证错误', exception_text)

            self.driver.wait()

            # 用新密码登录,验证是否修改成功
            self.login_page.user_login(user_to_modify_password['account'],
                                       user_to_modify_password['new_passwd'])
            # 判断登录成功后招呼栏的用户名是否正确
            username = self.user_center.get_username()

            # 从数据库获取登录账号的用户名
            account_info = self.user_center.get_account_info_by_sql(
                user_to_modify_password['account'])
            print(account_info)
            account_name = account_info[1]

            self.assertEqual(account_name, username, '登录成功后招呼栏的用户名错误')

            # 退出登录
            self.user_center.logout()

        csv_file.close()
class TestCase134AppUserSearchPagingFunction(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.global_dev_search_page = GlobalDevSearchPage(
            self.driver, self.base_url)
        self.account_center_page_navi_bar = AccountCenterNaviBarPages(
            self.driver, self.base_url)
        self.driver.set_window_max()
        self.global_account_search_page = GlobalAccountSearchPage(
            self.driver, self.base_url)
        self.log_in_base = LogInBase(self.driver, self.base_url)
        self.global_search_page_read_csv = GlobleSearchPageReadCsv()
        self.search_sql = SearchSql()
        self.assert_text = AssertText()
        self.driver.wait(1)
        self.connect_sql = ConnectSql()
        self.driver.clear_cookies()
        self.driver.wait(1)

    def tearDown(self):
        self.driver.quit_browser()

    def test_case_app_user_search_paging_function(self):
        # 打开途强在线首页-登录页
        self.base_page.open_page()
        self.log_in_base.log_in_jimitest()
        self.log_in_base.click_account_center_button()
        self.global_dev_search_page.click_easy_search()
        # 关闭
        self.global_dev_search_page.close_search()
        sleep(2)
        self.global_dev_search_page.click_easy_search()
        self.global_dev_search_page.click_app_account_search()
        # 点击搜索
        # self.global_dev_search_page.click_search_buttonss()

        # 获取页面的总数
        self.global_dev_search_page.swith_to_search_frame()
        total_page = self.global_dev_search_page.get_total_page_after_click_app_search(
        )
        if total_page[0] == 0:
            text = self.global_dev_search_page.get_no_data_text_in_app_user_search(
            )
            self.assertIn(self.assert_text.account_center_page_no_data_text(),
                          text)

        elif total_page[0] == 1:
            get_previous_page_class = self.global_dev_search_page.get_previous_page_class_in_app_user_search(
            )
            self.assertEqual('active', get_previous_page_class)

            get_next_page_class = self.global_dev_search_page.get_next_page_class_in_app_user_search(
            )
            self.assertEqual('active', get_next_page_class)

            list = [20, 30, 50, 100]
            for m in list:
                self.global_dev_search_page.click_per_page_number()
                total_page_again = self.global_dev_search_page.get_total_page_after_click_app_search(
                )
                self.assertEqual(total_page, total_page_again)

        else:
            for n in range(total_page[0]):
                self.global_dev_search_page.click_per_page(n)
                get_per_first_number = self.global_dev_search_page.get_per_frist_number_in_dev_searchs(
                )
                self.assertEqual(get_per_first_number, str(10 * (n + 1) - 9))
class TestCase131DevSearchDetailDevInfo(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.global_dev_search_page = GlobalDevSearchPage(
            self.driver, self.base_url)
        self.account_center_page_navi_bar = AccountCenterNaviBarPages(
            self.driver, self.base_url)
        self.driver.set_window_max()
        self.global_account_search_page = GlobalAccountSearchPage(
            self.driver, self.base_url)
        self.log_in_base = LogInBase(self.driver, self.base_url)
        self.global_search_page_read_csv = GlobleSearchPageReadCsv()
        self.search_sql = SearchSql()
        self.driver.wait(1)
        self.connect_sql = ConnectSql()
        self.assert_text = AssertText()
        self.driver.clear_cookies()
        self.driver.wait(1)

    def tearDown(self):
        self.driver.quit_browser()

    def test_case_dev_search_detail_dev_info(self):
        # 打开途强在线首页-登录页
        self.base_page.open_page()
        self.log_in_base.log_in()
        self.log_in_base.click_account_center_button()
        self.global_dev_search_page.click_easy_search()
        # 关闭
        self.global_dev_search_page.close_search()
        sleep(2)
        self.global_dev_search_page.click_easy_search()
        sleep(3)
        self.global_dev_search_page.swith_to_search_frame()
        self.global_dev_search_page.click_advanced_search_button()

        # 点击搜索按钮
        self.global_dev_search_page.click_search_buttons_in_dev_advanced_search_page(
        )
        sleep(4)
        # 点击详情
        self.global_dev_search_page.click_detail_button_in_dev_advanced_search_page(
        )
        sleep(2)
        get_imei_in_dev_advanced_detail_page = self.global_dev_search_page.get_imei_after_click_detail_button_in_dev_advanced(
        )
        ## 点击设备信息
        self.global_dev_search_page.click_dev_info_in_dev_advancde_search_page(
        )
        self.global_dev_search_page.switch_to_dev_info_frame()
        get_imei_in_dev_info = self.global_dev_search_page.get_imei_in_dev_info_after_click_dev_info_button(
        )
        self.assertEqual(get_imei_in_dev_advanced_detail_page,
                         get_imei_in_dev_info)

        ## 点击设备IMEI,修改设备IMEI
        get_imei_input_attribute = self.global_dev_search_page.get_imei_input_attribute_in_dev_info_page(
        )
        self.assertEqual('true', get_imei_input_attribute)

        ## 点击设备设备名称输入框,修改设备的设备名称,点击保存
        self.global_dev_search_page.input_dev_name_modify_dev_info_in_dev_info_page(
            '这是设备名称')
        # 点击保存
        self.global_dev_search_page.click_ensure_button_in_dev_info_page()

        # 点击设备设备分组下拉按钮,修改设备的设备分组(在控制台页面已新建分组),点击保存
        self.global_dev_search_page.select_dev_group_in_dev_info_page()
        self.global_dev_search_page.click_ensure_button_in_dev_info_page()

        # 修改使用范围选项(11类)
        self.global_dev_search_page.click_dev_range_of_use_in_dev_info_page(
            '2')
        self.global_dev_search_page.click_ensure_button_in_dev_info_page()

        # 修改iccid
        get_iccid_input_attribute = self.global_dev_search_page.get_iccid_input_attribute_in_dev_info_page(
        )
        self.assertEqual('true', get_iccid_input_attribute)

        # 修改销售时间
        get_sale_time_input_attribute = self.global_dev_search_page.get_sale_time_input_attribute_in_dev_info_page(
        )
        self.assertEqual('true', get_sale_time_input_attribute)

        # 修改超速速度和超速时间
        self.global_dev_search_page.add_over_speed_and_over_speed_time_to_modify_dev_info(
            '12', '10')
        self.global_dev_search_page.click_ensure_button_in_dev_info_page()

        # 点击备注输入框,修改设备的备注,点击保存
        self.global_dev_search_page.add_remark_to_modify_dev_info('这是备注')
        self.global_dev_search_page.click_ensure_button_in_dev_info_page()

        ## 点击设备类型,修改设备类型
        get_dev_type_input_attribute = self.global_dev_search_page.get_dev_type_input_attribute_in_dev_info_page(
        )
        self.assertEqual('true', get_dev_type_input_attribute)

        ## 点击设备SIM卡号输入框,修改设备的设备SIM卡号,点击保存
        self.global_dev_search_page.add_sim_number_to_modify_dev_info_page(
            '123456789')
        self.global_dev_search_page.click_ensure_button_in_dev_info_page()

        ## 点击激活时间,修改设备的激活时间
        get_active_time_input_attribute = self.global_dev_search_page.get_active_time_input_attribute_in_dev_info_page(
        )
        self.assertEqual('true', get_active_time_input_attribute)

        ## 点击平台到期时间,修改设备平台到期时间
        get_platform_time_input_attribute = self.global_dev_search_page.get_platform_time_input_attribute_in_dev_info_page(
        )
        self.assertEqual('true', get_platform_time_input_attribute)

        ##点击imsi,修改imsi
        get_imsi_input_attribute = self.global_dev_search_page.get_imsi_input_attribute_in_dev_info_page(
        )
        self.assertEqual('true', get_imsi_input_attribute)

        ## 点击导入时间输入框,编辑时间
        get_export_time_attribute = self.global_dev_search_page.get_export_time_attribute_in_dev_info_page(
        )
        self.assertEqual('true', get_export_time_attribute)
class TestCase83DevManageSelectIssuedCommand(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.driver.wait(1)
        self.driver.clear_cookies()
        self.driver.wait(1)

    def tearDown(self):
        self.driver.quit_browser()

    def test_case_dev_manage_select_issued_command(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()
        dev_type_in_list = self.dev_manage_page.get_dev_type_in_list()

        # 选中一个列表中的设备
        self.dev_manage_page.click_dev_in_list()
        # 判断是否选中
        input_value = self.dev_manage_page.check_input_value()
        self.assertEqual(True, input_value)

        # 点击选中发送指令
        self.dev_manage_page.click_select_send_command()
        # 点击关闭
        self.dev_manage_page.click_close_select_send_command()

        # 点击选中发送指令
        self.dev_manage_page.click_select_send_command()
        # 点击取消
        self.dev_manage_page.click_cancel_select_send_command()

        # 点击选中发送指令
        self.dev_manage_page.click_select_send_command()

        # 判断数量
        get_dev_number = self.dev_manage_page.get_dev_number_in_send_command()
        self.assertEqual(1, get_dev_number)

        get_dev_count = self.dev_manage_page.get_dev_count_number_in_send_command(
        )
        self.assertEqual(str(get_dev_number), get_dev_count)

        # 验证设备信息
        get_imei = self.dev_manage_page.get_imei_in_send_command()
        self.assertEqual(imei_in_list, get_imei)

        get_dev_type = self.dev_manage_page.get_dev_type_in_send_command()
        self.assertEqual(dev_type_in_list, get_dev_type)

        get_dev_user = self.dev_manage_page.get_dev_user_in_send_command()

        connect = self.connect_sql.connect_tuqiang_sql()
        cursor = connect.cursor()
        get_account_sql = "select o.account from equipment_mostly e inner join user_info o on e.userId = o.userId where e.imei = '%s';" % imei_in_list
        cursor.execute(get_account_sql)
        account_data = cursor.fetchall()
        account = account_data[0][0]
        cursor.close()
        connect.close()

        self.assertEqual(get_dev_user, account)

        # 点击删除设备
        self.dev_manage_page.click_detele_dev_in_send_command()

        self.dev_manage_page.click_send_command_in_send_command()
class TestCase113UserSearchPagingFunction(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.global_dev_search_page = GlobalDevSearchPage(
            self.driver, self.base_url)
        self.account_center_page_navi_bar = AccountCenterNaviBarPages(
            self.driver, self.base_url)
        self.driver.set_window_max()
        self.global_account_search_page = GlobalAccountSearchPage(
            self.driver, self.base_url)
        self.log_in_base = LogInBase(self.driver, self.base_url)
        self.global_search_page_read_csv = GlobleSearchPageReadCsv()
        self.search_sql = SearchSql()
        self.assert_text = AssertText()
        self.driver.wait(1)
        self.connect_sql = ConnectSql()
        self.driver.clear_cookies()
        self.driver.wait(1)

    def tearDown(self):
        self.driver.quit_browser()

    def test_user_search_paging_function(self):
        # 打开途强在线首页-登录页
        self.base_page.open_page()
        self.log_in_base.log_in()
        self.log_in_base.click_account_center_button()
        current_account = self.log_in_base.get_log_in_account()
        self.global_dev_search_page.click_easy_search()
        # 关闭
        self.global_dev_search_page.close_search()
        sleep(2)

        self.global_dev_search_page.click_easy_search()
        # self.global_dev_search_page.click_dev_search()
        self.global_dev_search_page.swith_to_search_frame()
        self.global_account_search_page.click_search_user_button()

        # 获取页面总共有多少页
        total_number = self.global_account_search_page.get_total_number_after_click_search_user_button(
        )

        if total_number == 0:
            self.assertIn(
                self.assert_text.account_center_page_no_data_text(),
                self.global_account_search_page.
                get_no_data_text_in_user_search())
        elif total_number == 1:
            up_page_state = self.global_account_search_page.get_up_page_state_in_search_user(
            )
            self.assertEqual('active', up_page_state)
            next_page_state = self.global_account_search_page.get_next_page_state_in_search_user(
            )
            self.assertEqual('active', next_page_state)
        else:
            for n in range(total_number):
                self.global_account_search_page.click_per_page(n)

        if total_number != 0:
            self.global_account_search_page.click_per_number()
Exemplo n.º 27
0
class TestCase02UserManageAddUserException1(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.login_page = LoginPage(self.driver, self.base_url)
        self.user_center = UserCenter(self.driver, self.base_url)
        self.user_management = UserManagement(self.driver, self.base_url)
        self.log_in_page_read_csv = LogInPageReadCsv()
        self.user_center_read_csv = UserCenterReadCsv()
        self.user_management_read_csv = UserManagementReadCsv()
        self.driver.set_window_max()
        self.connect_sql = ConnectSql()
        self.driver.wait(1)
        self.driver.clear_cookies()
        self.driver.wait(1)

        # 打开风控首页-登录页
        self.base_page.open_page()
        sleep(1)
        # 登录账号
        self.login_page.test_user_login()



    def tearDown(self):
        self.driver.quit_browser()

    def test_add_user_exception1(self):
        # 通过csv测试新增用户功能异常情况


        # 获取当前登录账户
        log_in_account = self.user_center.get_login_account()
        print(log_in_account)

        csv_file = self.user_management_read_csv.read_csv('add_user_exception1.csv')
        csv_data = csv.reader(csv_file)
        for row in csv_data:
            add_user_exception = {
                "add_user_name": row[0],
                "add_login_user": row[1],
                "add_login_passwd": row[2],
                "add_user_phone": row[3],
                "add_user_role":row[4],
                "exception_text": row[5],
            }

            # 点击进入用户管理
            self.user_management.click_user_manage()
            # 点击新增用户
            self.user_management.click_add_user()
            # 切入内层frame
            self.user_management.switch_to_2_frame()
            # 输入新增用户名
            self.user_management.input_add_user_name(add_user_exception['add_user_name'])
            # 输入登陆账号
            self.user_management.input_add_login_user(add_user_exception['add_login_user'])
            # 输入登录密码
            self.user_management.input_add_login_passwd(add_user_exception['add_login_passwd'])
            # 输入手机号码
            self.user_management.input_add_user_phone(add_user_exception['add_user_phone'])
            # 判断分配用户角色
            if add_user_exception['add_user_role'] == '1':
                self.user_management.input_add_user_role()
            # 选择所属公司部门
            self.user_management.choose_add_user_org()
            # 点击保存按钮
            self.user_management.click_add_user_save()

            # 获取异常提示
            text = self.user_management.get_add_user_exception1()

            self.assertEqual(add_user_exception['exception_text'], text)

            # 关闭新增用户框
            self.user_management.click_add_user_close()

            # 跳出最外层frame
            self.user_management.switch_to_default_content()

            # 从数据库查询验证新增失败
            new_user_name = self.user_management.get_add_user_by_sql(log_in_account)
            self.assertNotEqual(new_user_name, add_user_exception['add_user_name'])
            self.driver.wait(1)

        csv_file.close()

        # 退出登录
        self.user_center.logout()
Exemplo n.º 28
0
class TestCase136GlobSearchDevSearch(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.global_dev_search_page = GlobalDevSearchPage(
            self.driver, self.base_url)
        self.account_center_page_navi_bar = AccountCenterNaviBarPages(
            self.driver, self.base_url)
        self.driver.set_window_max()
        self.global_account_search_page = GlobalAccountSearchPage(
            self.driver, self.base_url)
        self.log_in_base = LogInBase(self.driver, self.base_url)
        self.global_search_page_read_csv = GlobleSearchPageReadCsv()
        self.search_sql = SearchSql()
        self.driver.wait(1)
        self.connect_sql = ConnectSql()
        self.assert_text = AssertText()
        self.driver.clear_cookies()
        self.driver.wait(1)

    def tearDown(self):
        self.driver.quit_browser()

    def test_case_glob_search_dev_search(self):
        # 打开途强在线首页-登录页
        self.base_page.open_page()
        self.log_in_base.log_in()
        self.log_in_base.click_account_center_button()
        self.global_dev_search_page.click_easy_search()
        # 关闭
        self.global_dev_search_page.close_search()
        sleep(2)
        self.global_dev_search_page.click_easy_search()
        self.global_dev_search_page.swith_to_search_frame()
        self.global_dev_search_page.click_advanced_search_button()

        # 点击搜索按钮
        self.global_dev_search_page.click_search_buttons_in_dev_advanced_search_page(
        )
        sleep(4)
        # 点击详情
        self.global_dev_search_page.click_detail_button_in_dev_advanced_search_page(
        )
        sleep(2)

        # 获取设备的imei和状态
        get_dev_imei = self.global_dev_search_page.get_dev_imei_in_details()
        get_dev_status = self.global_dev_search_page.get_dev_status_in_dev_detail(
        )

        # 点击关闭高级搜索
        self.driver.default_frame()
        self.global_dev_search_page.click_close_button()

        # 点击控制台
        self.global_dev_search_page.click_cancel_page_button()

        # 输入imei然后搜索
        self.global_dev_search_page.add_dev_imei_to_search_in_console(
            get_dev_imei)

        # 获取设备的状态在控制台页面
        get_dev_status_in_console_page = self.global_dev_search_page.get_dev_status_in_console_page(
        )
        self.assertEqual(get_dev_status, get_dev_status_in_console_page)
class TestCase137SearchUserByTypeCreatNewUser(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.global_dev_search_page = GlobalDevSearchPage(self.driver, self.base_url)
        self.account_center_page_navi_bar = AccountCenterNaviBarPages(self.driver, self.base_url)
        self.driver.set_window_max()
        self.global_account_search_page = GlobalAccountSearchPage(self.driver, self.base_url)
        self.log_in_base = LogInBase(self.driver, self.base_url)
        self.global_search_page_read_csv = GlobleSearchPageReadCsv()
        self.search_sql = SearchSql()
        self.driver.wait(1)
        self.connect_sql = ConnectSql()
        self.assert_text = AssertText()
        self.driver.clear_cookies()
        self.driver.wait(1)

    def tearDown(self):
        self.driver.quit_browser()

    def test_case_137_search_user_by_type_creat_new_user(self):
        # 打开途强在线首页-登录页
        self.base_page.open_page()
        self.log_in_base.log_in()
        # 点击账号中心
        self.log_in_base.click_account_center_button()
        self.global_dev_search_page.click_easy_search()
        # 关闭
        self.global_dev_search_page.close_search()
        sleep(2)
        self.global_dev_search_page.click_easy_search()
        # 选择用户搜索
        self.global_dev_search_page.click_user_search_buttons()
        self.global_dev_search_page.swith_to_search_frame()

        # 获取用户列表有多少页
        user_account = ''
        total_page = self.global_dev_search_page.get_total_page_after_search_user()
        for n in range(total_page):
            self.global_dev_search_page.click_per_page(n)
            # 获取每页有多少条
            number = self.global_dev_search_page.get_per_page_total_number_in_search_user()
            for i in range(number):
                # 获取各个用户的用户类型
                user_type = self.global_dev_search_page.get_user_type_in_search_user(i)
                user_account = self.global_dev_search_page.get_user_account_in_search_user(i)
                if user_type == '销售':
                    break
        # 搜索获取到的销售类型的用户,搜索
        self.global_dev_search_page.search_user(user_account)
        # 点击新增下级用户
        self.global_dev_search_page.click_add_next_user_in_search_user()
        # 获取新增下级用户时,下级的客户类型有几种
        user_type_number = self.global_dev_search_page.get_user_type_number_in_search_user()
        self.assertEqual(3, user_type_number)

        self.global_dev_search_page.search_user('')
        user_account = ''
        total_page = self.global_dev_search_page.get_total_page_after_search_user()
        for n in range(total_page):
            self.global_dev_search_page.click_per_page(n)
            # 获取每页有多少条
            number = self.global_dev_search_page.get_per_page_total_number_in_search_user()
            for i in range(number):
                # 获取各个用户的用户类型
                user_type = self.global_dev_search_page.get_user_type_in_search_user(i)
                user_account = self.global_dev_search_page.get_user_account_in_search_user(i)
                if user_type == '代理商':
                    break
        # 搜索获取到的销售类型的用户,搜索
        self.global_dev_search_page.search_user(user_account)
        # 点击新增下级用户
        self.global_dev_search_page.click_add_next_user_in_search_user()
        # 获取新增下级用户时,下级的客户类型有几种
        user_type_number = self.global_dev_search_page.get_user_type_number_in_search_user()
        self.assertEqual(2, user_type_number)

        self.global_dev_search_page.search_user('')
        user_account = ''
        total_page = self.global_dev_search_page.get_total_page_after_search_user()
        for n in range(total_page):
            self.global_dev_search_page.click_per_page(n)
            # 获取每页有多少条
            number = self.global_dev_search_page.get_per_page_total_number_in_search_user()
            for i in range(number):
                # 获取各个用户的用户类型
                user_type = self.global_dev_search_page.get_user_type_in_search_user(i)
                user_account = self.global_dev_search_page.get_user_account_in_search_user(i)
                if user_type == '用户':
                    break
        # 搜索获取到的销售类型的用户,搜索
        self.global_dev_search_page.search_user(user_account)
        # 获取新增下级用户的display值
        get_new_next_display = self.global_dev_search_page.get_new_next_display_in_search_user()
        self.assertEqual('display: none;', get_new_next_display)

        self.driver.default_frame()
Exemplo n.º 30
0
class TestCase108GlobSearchUserDetail(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.global_dev_search_page = GlobalDevSearchPage(
            self.driver, self.base_url)
        self.account_center_page_navi_bar = AccountCenterNaviBarPages(
            self.driver, self.base_url)
        self.driver.set_window_max()
        self.global_account_search_page = GlobalAccountSearchPage(
            self.driver, self.base_url)
        self.log_in_base = LogInBase(self.driver, self.base_url)
        self.global_search_page_read_csv = GlobleSearchPageReadCsv()
        self.search_sql = SearchSql()
        self.driver.wait(1)
        self.connect_sql = ConnectSql()
        self.assert_text = AssertText()
        self.driver.clear_cookies()
        self.driver.wait(1)

    def tearDown(self):
        self.driver.quit_browser()

    def test_case_global_search_user_detail(self):
        # 打开途强在线首页-登录页
        self.base_page.open_page()
        self.log_in_base.log_in()
        self.log_in_base.click_account_center_button()
        self.global_dev_search_page.click_easy_search()
        # 关闭
        self.global_dev_search_page.close_search()
        sleep(2)

        self.global_dev_search_page.click_easy_search()

        # 选择用户搜索
        self.global_dev_search_page.click_account_search()
        # self.global_dev_search_page.click_search_buttons()

        user_name = self.global_dev_search_page.get_user_name_in_user_search()
        user_type = self.global_dev_search_page.get_user_type_in_user_search()
        user_account = self.global_dev_search_page.get_user_account_in_user_search(
        )
        # 点用户详情
        self.global_dev_search_page.click_detail_in_user_search()

        # 用户信息
        self.global_dev_search_page.click_user_info_in_user_detail()
        # 获取用户信息中用户名称,用户类型、用户账号、上级用户
        user_name_in_detail = self.global_dev_search_page.get_user_name_in_detail(
        )
        self.assertIn(user_name, user_name_in_detail)

        # user_type_in_detail = self.global_dev_search_page.get_user_type_in_detail()
        # self.assertEqual(user_type, user_type_in_detail)

        uesr_account_in_detail = self.global_dev_search_page.get_user_account_in_detail(
        )
        self.assertEqual(user_account, uesr_account_in_detail)
        user_account_input_value = self.global_dev_search_page.get_user_account_input_value_in_detail(
        )
        self.assertEqual('true', user_account_input_value)

        get_up_user_name = self.global_dev_search_page.get_up_user_name_in_detail(
        )
        get_up_user_input_value = self.global_dev_search_page.get_up_user_input_value_in_detail(
        )
        self.assertEqual('true', get_up_user_input_value)

        # 查询选中用户的上级
        connect = self.connect_sql.connect_tuqiang_sql()
        cursor = connect.cursor()
        get_up_account_sql = "select parentId from user_info where account = '%s';" % user_account
        cursor.execute(get_up_account_sql)
        get_up_account = cursor.fetchall()
        up_account_id = get_up_account[0][0]
        get_up_name_sql = "select nickName from user_info where userId = '%s';" % up_account_id
        cursor.execute(get_up_name_sql)
        get_up_name = cursor.fetchall()
        up_account = get_up_name[0][0]
        cursor.close()
        connect.close()
        self.assertEqual(get_up_user_name, up_account)

        # 验证右侧的客户数是否可以搜索
        # 搜索没有的数据
        text = self.global_dev_search_page.search_user_in_user_info('无数据')
        self.assertIn(self.assert_text.account_center_page_no_data_text(),
                      text)

        # 循环点击五次
        for n in range(5):
            self.global_dev_search_page.swith_to_search_frame()
            self.driver.click_element(
                'x,//*[@id="complex_userInfo_tree_complexUpdate_%s_a"]' %
                str(n + 15))
            get_up_user_name = self.global_dev_search_page.get_up_user_name_in_details(
            )
            select_up_name = self.driver.get_text(
                'x,//*[@id="complex_userInfo_tree_complexUpdate_%s_span"]' %
                str(n + 15))
            # self.assertEqual(get_up_user_name, select_up_name)
            sleep(2)
            self.driver.default_frame()

        # 点击销售设备
        self.global_dev_search_page.click_sale_dev_in_user_info()
        # 获取销售的对象
        sale_user_name = self.global_dev_search_page.get_sale_user_name()
        self.assertEqual(user_name, sale_user_name)

        # 点击新增客户
        self.global_dev_search_page.click_add_user_in_user_info()
        # 获取新增客户默认的上级
        up_user_in_add_user = self.global_dev_search_page.get_up_user_in_add_user(
        )
        self.assertIn(user_name, up_user_in_add_user)

        # 验证账号
        # 为空
        self.global_dev_search_page.check_add_user_account_input_in_user_info(
            '')
        self.global_dev_search_page.click_save_add_user()
        text = self.global_dev_search_page.get_text_account_input_expertion()
        self.assertEqual(self.assert_text.cust_page_user_account_not_null(),
                         text)

        # 小于3位
        self.global_dev_search_page.check_add_user_account_input_in_user_info(
            '12')
        self.global_dev_search_page.click_save_add_user()
        text = self.global_dev_search_page.get_text_account_input_expertion()
        self.assertEqual(self.assert_text.cust_page_user_account_len(), text)

        # 验证最大长度
        get_user_account_input_max_len = self.global_dev_search_page.get_user_account_input_max_len(
        )
        self.assertEqual('30', get_user_account_input_max_len)

        # 验证客户名称
        # 为空
        self.global_dev_search_page.check_add_user_name_input_in_user_info('')
        self.global_dev_search_page.click_save_add_user()
        text = self.global_dev_search_page.get_text_name_input_expertion()
        self.assertEqual(self.assert_text.cust_page_user_name_not_null(), text)

        # 小于3位
        self.global_dev_search_page.check_add_user_name_input_in_user_info(
            '12')
        self.global_dev_search_page.click_save_add_user()
        text = self.global_dev_search_page.get_text_name_input_expertion()
        self.assertEqual(self.assert_text.cust_page_user_name_more_than_3s(),
                         text)

        # 密码
        # 为空
        self.global_dev_search_page.click_add_user_password_first_input_in_user_info(
            '')
        self.global_dev_search_page.click_save_add_user()
        get_first_password_text = self.global_dev_search_page.get_first_password_text(
        )
        self.assertEqual(self.assert_text.cust_page_user_password_not_nulls(),
                         get_first_password_text)

        # 小于6位
        self.global_dev_search_page.click_add_user_password_first_input_in_user_info(
            '12qw')
        self.global_dev_search_page.click_add_user_password_second_input_in_user_info(
            '12qw')
        self.global_dev_search_page.click_save_add_user()
        get_first_password_text = self.global_dev_search_page.get_first_password_text(
        )
        self.assertEqual(self.assert_text.cust_page_user_password_len(),
                         get_first_password_text)

        # 全数字
        self.global_dev_search_page.click_add_user_password_first_input_in_user_info(
            '121212')
        self.global_dev_search_page.click_add_user_password_second_input_in_user_info(
            '121212')
        self.global_dev_search_page.click_save_add_user()
        get_first_password_text = self.global_dev_search_page.get_first_password_text(
        )
        self.assertEqual(
            self.assert_text.account_center_page_password_formart_text(),
            get_first_password_text)

        # 全字母
        self.global_dev_search_page.click_add_user_password_first_input_in_user_info(
            'qwerqw')
        self.global_dev_search_page.click_add_user_password_second_input_in_user_info(
            'qwerqw')
        self.global_dev_search_page.click_save_add_user()
        get_first_password_text = self.global_dev_search_page.get_first_password_text(
        )
        self.assertEqual(
            self.assert_text.account_center_page_password_formart_text(),
            get_first_password_text)
        # 两次密码不一致
        self.global_dev_search_page.click_add_user_password_first_input_in_user_info(
            'qwerqw123')
        self.global_dev_search_page.click_add_user_password_second_input_in_user_info(
            'qwerqw2324')
        self.global_dev_search_page.click_save_add_user()
        get_second_password_text = self.global_dev_search_page.get_second_password_text(
        )
        self.assertEqual(self.assert_text.cust_page_password_unlike(),
                         get_second_password_text)