class TestCase54CommandManageCreateTemplateNormalMode(unittest.TestCase): """ 创建模板的异常操作--上报周期为普通模式 """ # author:邓肖斌 driver = None base_url = None base_page = None log_in_page = None command_management_page = None def setUp(self): # 前置条件 # 实例化对象 self.driver = AutomateDriver(choose='firefox') self.base_url = self.driver.base_url self.base_page = BasePage(self.driver, self.base_url) self.command_management_page = CommandManagementPage( self.driver, self.base_url) self.log_in_base = LogInBase(self.driver, self.base_url) self.command_management_page_read_csv = CommandManagementPageReadCsv() self.assert_text = AssertText() # 打开页面,填写用户名、密码、点击登录 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() # 登录之后点击控制台,然后点击指令管理 self.command_management_page.click_control_after_click_command_management( ) sleep(3) def tearDown(self): self.driver.quit_browser() def test_case_command_manage_create_template_normal_mode(self): # 断言url expect_url_after_click_command_management = self.base_url + '/custom/toTemplate' self.assertEqual( expect_url_after_click_command_management, self.command_management_page.actual_url_click_command_management()) # 断言左侧列表的title文本 expect_title_text_after_click_command_management = self.assert_text.command_manager_page_command_type( ) self.assertEqual( expect_title_text_after_click_command_management, self.command_management_page. actual_title_text_after_click_command_management()) # 点击工作模式模板管理 self.command_management_page.click_lift_list( 'work_type_template_management') # 断言右侧页面的title文本 expect_title_text_after_click_work_type_template_management = \ self.assert_text.command_manager_page_work_type_template_management() self.assertEqual( expect_title_text_after_click_work_type_template_management, self.command_management_page. actual_title_text_after_click_work_type_template_management()) # 点击创建模板 self.command_management_page.click_create_template() # 断言打开的创建模板的title文本 expect_title_text_after_click_create_template = self.assert_text.command_manager_page_new_command_text( ) self.assertEqual( expect_title_text_after_click_create_template, self.command_management_page. actual_title_text_after_click_create_template()) # 点击星期模式 self.command_management_page.click_normal_mode() # 验证创建模板的提示语 template_name = self.command_management_page.get_create_template_name_text( ) self.assertEqual(self.assert_text.command_manager_page_template_name(), template_name) # 验证定时模式下输入框的规则 # 模板名称 1 为空 self.command_management_page.add_template_name_in_create_template('') self.command_management_page.click_ensure() get_name_text_fail = self.command_management_page.get_text_after_click_ensure( ) self.assertEqual(self.assert_text.command_manager_page_not_null(), get_name_text_fail) # wake up time 唤醒时间 self.command_management_page.click_ensure() get_text_wake_up_time_fail = self.command_management_page.get_text_wake_up_time_fail( ) self.assertEqual(self.assert_text.command_manager_page_not_null(), get_text_wake_up_time_fail) # 限时周期 # 限时周期 # 为空 self.command_management_page.click_ensure() get_text_fail_limit_cycle = self.command_management_page.get_text_fail_limit_cycles( ) self.assertEqual(self.assert_text.command_manager_page_not_null(), get_text_fail_limit_cycle) # 大于15 self.command_management_page.add_limit_cycle_in_create_templates('91') self.command_management_page.click_ensure() get_text_fail_limit_cycle = self.command_management_page.get_text_fail_limit_cycles( ) self.assertEqual(self.assert_text.command_manager_page_must_than_90(), get_text_fail_limit_cycle) # 非正整数 self.command_management_page.add_limit_cycle_in_create_templates('刷刷刷') self.command_management_page.click_ensure() get_text_fail_limit_cycle = self.command_management_page.get_text_fail_limit_cycles( ) self.assertEqual( self.assert_text.command_manager_page_must_be_integer(), get_text_fail_limit_cycle) # 非正整数 大于15 self.command_management_page.add_limit_cycle_in_create_templates( '2323刷刷刷') self.command_management_page.click_ensure() get_text_fail_limit_cycle = self.command_management_page.get_text_fail_limit_cycles( ) get_texts_fail_limit_cycle = self.command_management_page.get_texts_fail_limit_cycles( ) self.assertEqual( self.assert_text.command_manager_page_must_than_90() + self.assert_text.command_manager_page_must_be_integer(), get_text_fail_limit_cycle + get_texts_fail_limit_cycle) # 点击添加 self.command_management_page.click_add_user_defined_template() # 验证是否添加成功 number = self.command_management_page.get_total_number_template() self.assertEqual(2, number) # 点击删除 self.command_management_page.click_delete_user_defined_template() number = self.command_management_page.get_total_number_template() self.assertEqual(1, number)
class TestCase303SetUpWorkTypeTemplateManagementCreatTemplate( unittest.TestCase): # 测试设置 - 指令管理 - 模板管理 - 创建模板 driver = None base_url = None base_page = None log_in_page = None command_management_page = None def setUp(self): # 前置条件 # 实例化对象 self.driver = AutomateDriver(choose='firefox') self.base_url = self.driver.base_url self.base_page = BasePage(self.driver, self.base_url) self.command_management_page = CommandManagementPage( self.driver, self.base_url) self.log_in_base = LogInBase(self.driver, self.base_url) self.command_management_page_read_csv = CommandManagementPageReadCsv() self.assert_text = AssertText() # 打开页面,填写用户名、密码、点击登录 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() # 登录之后点击控制台,然后点击指令管理 self.command_management_page.click_control_after_click_command_management( ) sleep(3) def tearDown(self): self.driver.quit_browser() def test_case_set_up_work_type_template_management_creat_template(self): # 断言url expect_url_after_click_command_management = self.base_url + '/custom/toTemplate' self.assertEqual( expect_url_after_click_command_management, self.command_management_page.actual_url_click_command_management()) # 断言左侧列表的title文本 expect_title_text_after_click_command_management = self.assert_text.command_manager_page_command_type( ) self.assertEqual( expect_title_text_after_click_command_management, self.command_management_page. actual_title_text_after_click_command_management()) # 点击工作模式模板管理 self.command_management_page.click_lift_list( 'work_type_template_management') # 断言右侧页面的title文本 expect_title_text_after_click_work_type_template_management = \ self.assert_text.command_manager_page_work_type_template_management() self.assertEqual( expect_title_text_after_click_work_type_template_management, self.command_management_page. actual_title_text_after_click_work_type_template_management()) # 点击创建模板 self.command_management_page.click_create_template() # 断言打开的创建模板的title文本 expect_title_text_after_click_create_template = self.assert_text.command_manager_page_new_command_text( ) self.assertEqual( expect_title_text_after_click_create_template, self.command_management_page. actual_title_text_after_click_create_template()) # 关闭创建模板 self.command_management_page.click_close_create_template() # 断言是否关闭成功 self.assertEqual( expect_title_text_after_click_work_type_template_management, self.command_management_page. actual_title_text_after_click_work_type_template_management()) # 点击创建模板 self.command_management_page.click_create_template() # 断言打开的创建模板的title文本 self.assertEqual( expect_title_text_after_click_create_template, self.command_management_page. actual_title_text_after_click_create_template()) # 取消创建模板 self.command_management_page.click_cancel_create_template() # 断言是否关闭成功 self.assertEqual( expect_title_text_after_click_work_type_template_management, self.command_management_page. actual_title_text_after_click_work_type_template_management()) # 输入参数 csv_file = self.command_management_page_read_csv.read_csv( 'work_template_time_data.csv') csv_data = csv.reader(csv_file) is_header = True for row in csv_data: if is_header: is_header = False continue work_template_time_data = { 'name': row[0], 'type': row[1], 'day': row[2], 'circulation': row[3], 'circulation_day': row[4], 'week': row[5], 'circulation1': row[6], 'circulation_day1': row[7], 'jiange': row[8], 'circulation2': row[9], 'circulation_day2': row[10], } # 点击创建模板 self.command_management_page.click_create_template() # 断言打开的创建模板的title文本 self.assertEqual( expect_title_text_after_click_create_template, self.command_management_page. actual_title_text_after_click_create_template()) sleep(5) self.command_management_page.add_create_template_data( work_template_time_data) # 点击保存 self.command_management_page.create_template_click_ensure() sleep(2) # 点击删除 self.command_management_page.delete_add_new_template() csv_file.close()
class TestCase312SetUpCommandManageCreateTemplate(unittest.TestCase): # 测试 设置 - 指令管理 - 创建模板异常操作--上报周期为定时模式 driver = None base_url = None base_page = None log_in_page = None command_management_page = None def setUp(self): # 前置条件 # 实例化对象 self.driver = AutomateDriver(choose='firefox') self.base_url = self.driver.base_url self.base_page = BasePage(self.driver, self.base_url) self.command_management_page = CommandManagementPage(self.driver, self.base_url) self.log_in_base = LogInBase(self.driver, self.base_url) self.command_management_page_read_csv = CommandManagementPageReadCsv() self.assert_text = AssertText() # 打开页面,填写用户名、密码、点击登录 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() # 登录之后点击控制台,然后点击指令管理 self.command_management_page.click_control_after_click_command_management() sleep(3) def tearDown(self): self.driver.quit_browser() def test_case_set_up_command_manage_create_template(self): # 断言url expect_url_after_click_command_management = self.base_url + '/custom/toTemplate' self.assertEqual(expect_url_after_click_command_management, self.command_management_page.actual_url_click_command_management()) # 断言左侧列表的title文本 expect_title_text_after_click_command_management = self.assert_text.command_manager_page_command_type() self.assertEqual(expect_title_text_after_click_command_management, self.command_management_page.actual_title_text_after_click_command_management()) # 点击工作模式模板管理 self.command_management_page.click_lift_list('work_type_template_management') # 断言右侧页面的title文本 expect_title_text_after_click_work_type_template_management = \ self.assert_text.command_manager_page_work_type_template_management() self.assertEqual(expect_title_text_after_click_work_type_template_management, self.command_management_page.actual_title_text_after_click_work_type_template_management()) # 点击创建模板 self.command_management_page.click_create_template() # 断言打开的创建模板的title文本 expect_title_text_after_click_create_template = self.assert_text.command_manager_page_new_command_text() self.assertEqual(expect_title_text_after_click_create_template, self.command_management_page.actual_title_text_after_click_create_template()) # 验证创建模板的提示语 template_name = self.command_management_page.get_create_template_name_text() self.assertEqual(self.assert_text.command_manager_page_template_name(), template_name) # 验证定时模式下输入框的规则 # 模板名称 1 为空 self.command_management_page.add_template_name_in_create_template('') self.command_management_page.click_ensure() get_name_text_fail = self.command_management_page.get_text_after_click_ensure() self.assertEqual(self.assert_text.command_manager_page_not_null(), get_name_text_fail) # 上班时间 为空 self.command_management_page.click_ensure() get_report_time_text_fail = self.command_management_page.get_report_time_text_fail() self.assertEqual(self.assert_text.command_manager_page_not_null(), get_report_time_text_fail) # 循环上报天数 为空 self.command_management_page.click_ensure() get_circulation_report_time_text_fail = self.command_management_page.get_circulation_report_time_text_fail() self.assertEqual(self.assert_text.command_manager_page_not_null(), get_circulation_report_time_text_fail) # 非正整数 self.command_management_page.add_circulation_report_time('sssa') self.command_management_page.click_ensure() get_circulation_report_time_text_fail = self.command_management_page.get_circulation_report_time_text_fail() self.assertEqual(self.assert_text.command_manager_page_must_be_integer(), get_circulation_report_time_text_fail) # 大于90 self.command_management_page.add_circulation_report_time('91') self.command_management_page.click_ensure() get_circulation_report_time_text_fail = self.command_management_page.get_circulation_report_time_text_fail() self.assertEqual(self.assert_text.command_manager_page_must_than_90(), get_circulation_report_time_text_fail) # 大于90且非正整数 self.command_management_page.add_circulation_report_time('91fdsf') self.command_management_page.click_ensure() get_circulation_report_time_text_fail = self.command_management_page.get_circulation_report_time_text_fail() get_circulation_report_time_texts_fail = self.command_management_page.get_circulation_report_time_texts_fail() self.assertEqual( self.assert_text.command_manager_page_must_than_90() + self.assert_text.command_manager_page_must_be_integer(), get_circulation_report_time_text_fail + get_circulation_report_time_texts_fail) # 点击添加 self.command_management_page.click_add_user_defined_template() # 验证是否添加成功 number = self.command_management_page.get_total_number_template() self.assertEqual(2, number) # 点击删除 self.command_management_page.click_delete_user_defined_template() number = self.command_management_page.get_total_number_template() self.assertEqual(1, number)
class TestCase304SetUpWorkTypeTemplateManagementOperation(unittest.TestCase): # 测试 设置 - 指令管理 - 模板管理 - 模板操作 driver = None base_url = None base_page = None log_in_page = None command_management_page = None def setUp(self): # 前置条件 # 实例化对象 self.driver = AutomateDriver(choose='firefox') self.base_url = self.driver.base_url self.base_page = BasePage(self.driver, self.base_url) self.command_management_page = CommandManagementPage(self.driver, self.base_url) self.log_in_base = LogInBase(self.driver, self.base_url) self.command_management_page_read_csv = CommandManagementPageReadCsv() self.assert_text = AssertText() # 打开页面,填写用户名、密码、点击登录 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() # 登录之后点击控制台,然后点击指令管理 self.command_management_page.click_control_after_click_command_management() sleep(3) def tearDown(self): self.driver.quit_browser() def test_case_set_up_work_type_template_management_operation(self): # 断言url expect_url_after_click_command_management = self.base_url + '/custom/toTemplate' self.assertEqual(expect_url_after_click_command_management, self.command_management_page.actual_url_click_command_management()) # 断言左侧列表的title文本 expect_title_text_after_click_command_management = self.assert_text.command_manager_page_command_type() self.assertEqual(expect_title_text_after_click_command_management, self.command_management_page.actual_title_text_after_click_command_management()) # 点击工作模式模板管理 self.command_management_page.click_lift_list('work_type_template_management') # 断言右侧页面的title文本 expect_title_text_after_click_work_type_template_management = \ self.assert_text.command_manager_page_work_type_template_management() self.assertEqual(expect_title_text_after_click_work_type_template_management, self.command_management_page.actual_title_text_after_click_work_type_template_management()) # 点击修改 self.command_management_page.work_template_operation_revise() # 断言 expect_title_text_after_click_create_template = self.assert_text.command_manager_page_new_command_text() self.assertEqual(expect_title_text_after_click_create_template, self.command_management_page.actual_title_text_after_click_create_template()) # 取消修改模板 self.command_management_page.click_cancel_create_template() # 断言是否关闭成功 self.assertEqual(expect_title_text_after_click_work_type_template_management, self.command_management_page.actual_title_text_after_click_work_type_template_management()) # 点击修改 self.command_management_page.work_template_operation_revise() # 断言 self.assertEqual(expect_title_text_after_click_create_template, self.command_management_page.actual_title_text_after_click_create_template()) # 关闭修改模板 self.command_management_page.click_close_create_template() # 断言是否关闭成功 self.assertEqual(expect_title_text_after_click_work_type_template_management, self.command_management_page.actual_title_text_after_click_work_type_template_management()) # 点击修改 self.command_management_page.work_template_operation_revise() # 断言 self.assertEqual(expect_title_text_after_click_create_template, self.command_management_page.actual_title_text_after_click_create_template()) # 点击保存 self.command_management_page.create_template_click_ensure() # 断言 self.assertEqual(expect_title_text_after_click_work_type_template_management, self.command_management_page.actual_title_text_after_click_work_type_template_management()) # 点击删除 self.command_management_page.work_template_operation_delete() # 断言 expect_text_after_click_delete = self.assert_text.command_manager_page_ensure_text() self.assertEqual(expect_text_after_click_delete, self.command_management_page.actual_text_after_click_delete()) # 点击取消 self.command_management_page.cancel_work_template_operation_delete() # 断言 self.assertEqual(expect_title_text_after_click_work_type_template_management, self.command_management_page.actual_title_text_after_click_work_type_template_management()) # 点击删除 self.command_management_page.work_template_operation_delete() # 断言 self.assertEqual(expect_text_after_click_delete, self.command_management_page.actual_text_after_click_delete()) # 点击关闭 self.command_management_page.close_work_template_operation_delete() # 断言 self.assertEqual(expect_title_text_after_click_work_type_template_management, self.command_management_page.actual_title_text_after_click_work_type_template_management())