def test_students_vacate_add(self, add_info): # 新增按钮 Service.get_ele_location_method(self.driver, 'css', "#content > div.row.con-margin.con-body-con > div > div > div > " "div.col-lg-12.col-md-12.col-xs-12.con-body-padding.text-left > div > button").click() # 新增操作 StudentsVacate.students_vacate_add(self.driver, add_info) # 数据库数据量查询 sql_result = Utility.get_connect_one( "select count(student_id) from student_leave", students_vacate_page_data["test_students_vacate_query"]["sql_bath"] )[0] # 新增操作 # StudentsVacate.students_vacate_add(self.driver, add_info) # 数据库数据量查询 sql_result_again = Utility.get_connect_one( "select count(student_id) from student_leave", students_vacate_page_data["test_students_vacate_query"]["sql_bath"] )[0] # 断言 if sql_result < sql_result_again: actual = "add-students-vacate-success" else: actual = "add-students-vacate-fail" # 预期不符,截图 Service.get_screen(self.driver, actual, add_info["expect"], "/query_students_vacate", "C:/Users/wang/Desktop/woniuboss4.0/gui/error") self.assertEqual(actual, add_info["expect"])
def students_vacate_query_sql(cls, query_info, path): base_sql = "select count(student_id) from student_leave" flag = 0 if query_info["region"] != "全部" and query_info["region"] != "": region_table = "select count(s.student_id) from student_leave s " \ "inner join class c on s.class_id=c.class_id where " \ "c.region_id in (select region_id from region where region_name='%s')" \ % query_info["region"] base_sql = region_table flag = 1 if query_info["status"] != "全部" and query_info["status"] != "": if flag: base_sql = base_sql + " and leave_status='%s'" %query_info["status"] else: base_sql = base_sql + " where leave_status='%s'" %query_info["status"] flag = 1 if query_info["name"] != "": status_sql = "select student_id from student where student_name='%s'" % ( query_info["name"]) status_id = Utility.get_connect_one(status_sql, path)[0] if flag: base_sql = base_sql + " and student_id=%d" % (status_id) else: base_sql = base_sql + " where student_id=%d" % (status_id) return Utility.get_connect_one(base_sql + ";", path)[0]
def test_marketing_query(self, marketing_query_info, expect): # 添加cookie信息,跳转到登陆后首页 Service.add_cookie(self.driver, self.url, "../config/data_cookie") # 点击市场营销 Service.get_ele(self.driver, By.PARTIAL_LINK_TEXT, "市场营销").click() Marketing.marketing_query(self.driver, marketing_query_info) # 判断是否查询出数据 query_result = Service.get_ele(self.driver, By.CSS_SELECTOR, "table#netCus-table tbody").text # 市场营销有上传过数据 if query_result != "无符合条件的记录": # 前端页面显示数据数,根据状态(不同状态数量不同) query_count_result = Service.get_ele( self.driver, By.XPATH, "//span[@class='pagination-info']").text result = re.match('^显示.*,总.*?(\d+)', query_count_result) # 查询数据库,对比数据条数是否正确 if marketing_query_info['status'] == "全部" and marketing_query_info[ 'area'] == "全部": sql = 'select count(customer_id) from customer where source="%s" and ' \ 'create_time between "%s" and "%s"'%('网络',marketing_query_info['starttime'],marketing_query_info['endtime']) query_connect_count = Utility.get_connect_one( sql, "../config/data_base") elif marketing_query_info[ 'status'] == "全部" and marketing_query_info['area'] != "全部": sql = 'select count(customer_id) from customer where source="%s" and region="%s" and create_time between "%s" and "%s"' \ %('网络',marketing_query_info['area'],marketing_query_info['starttime'],marketing_query_info['endtime']) query_connect_count = Utility.get_connect_one( sql, "../config/data_base") elif marketing_query_info[ 'status'] != "全部" and marketing_query_info['area'] == "全部": sql = 'select count(customer_id) from customer where source="%s" and last_status="%s" and create_time between "%s" and "%s"' \ % ('网络', marketing_query_info['status'],marketing_query_info['starttime'],marketing_query_info['endtime']) query_connect_count = Utility.get_connect_one( sql, "../config/data_base") else: sql = 'select count(customer_id) from customer where source="%s" and last_status="%s" and region="%s" and create_time between "%s" and "%s"' \ % ('网络', marketing_query_info['status'],marketing_query_info['area'],marketing_query_info['starttime'],marketing_query_info['endtime']) query_connect_count = Utility.get_connect_one( sql, "../config/data_base") if int(result.group(1)) == int(query_connect_count[0]): actual = 'query-pass' else: actual = 'query-fail' self.assertEqual(actual, expect) else: print("查询为空") self.driver.quit()
def get_excell_data(cls, path, sheet_name, *clos): # 读取表格 book = Utility.read_excell(path) # 得到具体工作表 sheet_target_name = book.sheet_by_name(sheet_name) # 定义 返回的列表 test_case_list_directory = [] # 遍历读取 for i in range(1, sheet_target_name.nrows): # 空字典 test_case_list = [] clos_dict = {} # 具体列 value_clos_datas = sheet_target_name.cell(i, clos[0]).value.splitlines() value_clos_expect = sheet_target_name.cell(i, clos[1]).value.strip() for clos_data in value_clos_datas: # 切割,用"=" data_split = clos_data.split("=") # = 左边为键,右边为值 clos_dict[data_split[0].strip()] = data_split[1].strip() # 添加预期 clos_dict["expect"] = value_clos_expect # 添加列表 test_case_list.append(clos_dict) test_case_list_directory.append(test_case_list) return test_case_list_directory
def setUp(self): self.driver = webdriver.Firefox() self.driver.maximize_window() self.driver.implicitly_wait(10) self.config_info = Utility.read_json("../config/data_base") self.url = self.config_info["BASEURL"] self.driver.get(self.url)
def jump_target_module(cls, driver, url_path, cookie_path, locate_mode, msg): url = Utility.read_json(url_path)["BASEURL"] driver.get(url) # add cookie info , jump target login page Service.add_cookie(driver, url, cookie_path) # click "msg" module Service.get_ele_location_method(driver, locate_mode, msg).click()
def test_add_employee(self, add_info): # 数据库员工数量 add_sql = page_data["test_add_employee"]["add_sql"] sql_result = Utility.get_connect_one( add_sql, page_data["test_add_employee"]["sql_bath"]) PersonnelManagement.add_employee(self.driver, add_info) # 数据库对比 sql_result_again = Utility.get_connect_one( add_sql, page_data["test_add_employee"]["sql_bath"]) if sql_result_again > sql_result: actual = "add_employee-success" else: actual = "add_employee-fail" self.assertEqual(actual, add_info["expect"])
def setUp(self): self.driver = webdriver.Firefox() self.driver.maximize_window() self.driver.implicitly_wait(10) self.url = Utility.read_json("../../config/data_base")["BASEURL"] # 跳转到报表中心 Service.add_cookie(self.driver, self.url) # 点击报表中心 Service.get_ele(self.driver, By.PARTIAL_LINK_TEXT, "报表中心")
def current_page_person(cls, driver, locate_method, msg, body_id_msg): current_page_count = Service.get_eles_location_method(driver, locate_method, msg) if len(current_page_count) > 1: # 随机一个 random_number = Utility.get_random(1, len(current_page_count)) Service.get_ele_location_method( driver, 'css', "%s > tbody " "> tr:nth-child(%d) > td:nth-child(9) > button"%(body_id_msg, random_number)).click() else: Service.get_ele_location_method( driver, 'css', "%s > tbody " "> tr:nth-child(1) > td:nth-child(9) > button"%(body_id_msg)).click()
def person_query_sql(cls, query_info, path): base_sql = "select count(employee_id) from employee" flag = 0 if query_info["region"] != "全部" and query_info["region"] != "": region_sql = "select region_id from region where region_name='%s'" %query_info["region"] region_id = Utility.get_connect_one(region_sql, path)[0] if flag: base_sql = base_sql + " and region_id=%d"%region_id else: base_sql = base_sql + " where region_id=%d"%region_id flag = 1 if query_info["department"] != "全部" and query_info["department"] != "": department_sql = "select department_id from department where department_name='%s' and region_id=%d" %(query_info["department"],region_id) department_id = Utility.get_connect_one(department_sql, path)[0] if flag: base_sql = base_sql + " and department_id=%d"%department_id else: base_sql = base_sql + " where department_id=%d"%department_id flag = 1 if query_info["status"] != "全部" and query_info["status"] != "": status_sql = "select dict_key from dictionary_data where dict_type_id=2 and dict_value='%s'" % ( query_info["status"]) status_id = Utility.get_connect_one(status_sql, path)[0] if flag: base_sql = base_sql + " and emp_status='%s'"%status_id else: base_sql = base_sql + " where emp_status='%s'"%status_id flag = 1 if query_info["name"] != "": if flag: base_sql = base_sql + " and employee_name like '%s'"%(query_info["name"]+"%") else: base_sql = base_sql + " where employee_name like '%s'"%(query_info["name"]+"%") return Utility.get_connect_one(base_sql+";", path)[0]
def page_decode(cls, driver, config_path): # 得到decode信息 config_info = Utility.read_json(config_path) # 解密 Service.get_ele(driver, By.ID, "btn-decrypt").click() decode_input_ele = Service.get_ele(driver, By.CSS_SELECTOR, "#secondPass-modal > div > div > " "div.modal-body.text-center > input[type=password]") Service.input_value_ele(decode_input_ele, config_info["DECODE"]) # 点击确定 Service.get_ele(driver, By.CSS_SELECTOR, "#secondPass-modal > div > div > div.modal-footer > button").click()
def class_manager_query_sql(cls, query_info, path): base_sql = "select count(class_id) from class" flag = 0 if query_info["region"] != "全部" and query_info["region"] != "": region_sql = "select region_id from region where region_name='%s'" % query_info["region"] region_id = Utility.get_connect_one(region_sql, path)[0] if flag: base_sql = base_sql + " and region_id=%d" % region_id else: base_sql = base_sql + " where region_id=%d" % region_id flag = 1 if query_info["class_status"] != "全部" and query_info["class_status"] != "": status_sql = "select dict_key from dictionary_data where dict_type_id=37 and dict_value='%s'" % ( query_info["class_status"]) status_id = Utility.get_connect_one(status_sql, path)[0] if flag: base_sql = base_sql + " and opening_status='%s'" % status_id else: base_sql = base_sql + " where opening_status='%s'" % status_id flag = 1 return Utility.get_connect_one(base_sql + ";", path)[0]
def get_role_info(cls, path, role_data): # 读表格 book = Utility.read_excell(path) role_sheet = book.sheet_by_name("roles") # 遍历每一行 for i in range(1, role_sheet.nrows): # 读取 角色 判断账号 role_info = role_sheet.cell(i, 1).value.strip() # 找到要找的角色 if role_data in role_info: # 读取账号、密码 role_user = role_sheet.cell(i, 3).value.strip() role_upass = role_sheet.cell(i, 4).value.strip() return role_user, role_upass else: return None
from gui.common.class_manager.StudentsVacate import StudentsVacate from gui.util.Service import Service from gui.util.Utility import Utility # 查询数据 students_vacate_query_data = Service.get_excell_data( "C:/Users/wang/Desktop/woniuboss4.0/gui/test_data/personnel_management_data/testCase.xlsx", "students_vacate_query", 3, 4) students_vacate_add_data = Service.get_excell_data( "C:/Users/wang/Desktop/woniuboss4.0/gui/test_data/personnel_management_data/testCase.xlsx", "students_vacate_add", 3, 4) # 页面数据 students_vacate_page_data = Utility.read_json( "C:/Users/wang/Desktop/woniuboss4.0/gui/test_data/class_manager_data/students_vacate_data") # class test: # def __init__(self): # self.driver=Service.get_driver() # # # class Add_Income(): # def test(self): # Service.jump_target_module(self.driver, "../../config/data_base", "../../config/student_teacher_cookie", "link", # "班务管理") # # Service.login_use_cookie(driver,"../../config/data_base","../../config/data_cookie") # # Service.get_ele_location_method(self.driver, "link", "学员请假").click() # # Service.get_ele_location_method(self.driver,"css","button.btn-padding:nth-child(1)").click() #
def marketing_query_sql(cls, query_info, path): base_sql = "select count(customer_id) from customer" flag = 0 if query_info["area"] != "全部" and query_info["area"] != "": area_sql = "select region_id from region where region_name='%s'" % query_info["area"] area_id = Utility.get_connect_one(area_sql, path)[0] if flag: base_sql = base_sql + " and region_id=%d" % area_id else: base_sql = base_sql + " where region_id=%d" % area_id flag = 1 if query_info["status"] != "全部" and query_info["status"] != "": status_sql = "select dict_key from dictionary_data where dict_type_id=1 and dict_value='%s'" % ( query_info["status"]) last_status = Utility.get_connect_one(status_sql, path)[0] if flag: base_sql = base_sql + " and last_status='%s'"%(last_status) else: base_sql = base_sql + " where last_status='%s'"%(last_status) flag = 1 if query_info["source"] != "全部" and query_info["source"] != "": source_sql = "select dict_key from dictionary_data where dict_type_id=4 and dict_value='%s'"%( query_info["source"]) source = Utility.get_connect_one(source_sql, path)[0] if flag: base_sql = base_sql + " and source='%s'"%(source) else: base_sql = base_sql + " where source='%s'"%(source) flag = 1 if query_info["starttime"] != "" and query_info["endtime"] != "": if flag: base_sql = base_sql + \ " and create_time between '%s' and '%s'"%(query_info["starttime"], query_info["endtime"]) else: base_sql = base_sql + \ " where create_time between '%s' and '%s'"%(query_info["starttime"], query_info["endtime"]) flag = 1 elif query_info["starttime"] == "" and query_info["endtime"] != "": if flag: base_sql = base_sql + \ " and create_time before '%s'"%(query_info["endtime"]) else: base_sql = base_sql + \ " where create_time before '%s'"%(query_info["endtime"]) flag = 1 elif query_info["starttime"] != "" and query_info["endtime"] == "": if flag: base_sql = base_sql + \ " and create_time after '%s'"%(query_info["starttime"]) else: base_sql = base_sql + \ " where create_time after '%s'"%(query_info["starttime"]) flag = 1 if query_info["name"] != "" and query_info["name"] == "一瓢": query_info["name"] = "1A5EF59031E0FDEB" if flag: base_sql = base_sql + " and name='%s'" % (query_info["name"] + "%") else: base_sql = base_sql + " where name='%s'" % (query_info["name"] + "%") return Utility.get_connect_one(base_sql + ";", path)[0]
import unittest import re from parameterized import parameterized from selenium import webdriver from selenium.webdriver.common.by import By from gui.common.training_resource.TrainingResource import TrainingResource from gui.util.Service import Service from gui.util.Utility import Utility training_resource_data = Utility.read_json( "../test_data/training_resource/training_resource_data") class TrainingResourceTest(unittest.TestCase): # 自定义,初始化driver,窗口最大化,隐式等待 def setUp(self): self.driver = webdriver.Firefox() self.driver.maximize_window() self.driver.implicitly_wait(10) self.url = Utility.read_json("../config/data_base")["BASEURL"] self.driver.get(self.url) # 添加cookie def training_resource_init(self): # 添加cookie信息,跳转到登陆后首页 Service.add_cookie(self.driver, self.url, "../config/data_cookie") # 培训资源 Service.get_ele(self.driver, By.PARTIAL_LINK_TEXT, "培训资源").click()
def add_cookie(cls,driver,url,path): # cookie信息 cookie_data = Utility.read_json(path) for cookie_info in cookie_data: driver.add_cookie(cookie_info) driver.get(url)
import unittest from parameterized import parameterized from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.select import Select from gui.common.marketing.Marketing import Marketing from gui.util.Service import Service from gui.util.Utility import Utility import re # 不同区域、不同状态、入库时间 marketing_query_data = Utility.read_json( "../test_data/marketing_data/marketing_query_data") class MarketingTest(unittest.TestCase): # 自定义,初始化driver,窗口最大化,隐式等待 def setUp(self): self.driver = webdriver.Firefox() self.driver.maximize_window() self.driver.implicitly_wait(10) self.url = Utility.read_json("../config/data_base")["BASEURL"] self.driver.get(self.url) # 查询功能,不同区域、不同状态、入库时间,查询 area,status,starttime,endtime # 查询除内容后,判断是否能解密成功"area":"西安","status":"新入库", @parameterized.expand(marketing_query_data) def test_marketing_query(self, marketing_query_info, expect): # 添加cookie信息,跳转到登陆后首页 Service.add_cookie(self.driver, self.url, "../config/data_cookie")
def test_training_resource(self, training_resource_info, expect): # 获取sql def joint_sql(): time_base_sql = ' and create_time between "%s" and "%s" and type="下载"' % ( training_resource_info['date1'], training_resource_info['date2']) if training_resource_info['poolSelect']=="全部" and training_resource_info['empNameSelect']=="全部" and\ training_resource_info['statusSelect']=="全部" and training_resource_info['sourceSelect']=="全部" and\ training_resource_info['date1']=="" and training_resource_info['date2']!="": sql = 'select count(customer_id) from customer where pool_type != "public"' + time_base_sql return sql if training_resource_info['poolSelect']=="全部" and training_resource_info['empNameSelect']=="全部" and\ training_resource_info['statusSelect']=="全部" and training_resource_info['sourceSelect']!="全部": sql = 'select count(customer_id) from customer where source = "%s" and pool_type != "public"'\ %training_resource_info['sourceSelect']+time_base_sql return sql elif training_resource_info['poolSelect']!="全部" and training_resource_info['empNameSelect']=="全部" and\ training_resource_info['statusSelect']=="全部" and training_resource_info['sourceSelect']!="全部": sql = 'select count(customer_id) from customer where source = "%s" and pool_type = "%s"' \ % (training_resource_info['sourceSelect'],training_resource_info['poolSelect'])+time_base_sql return sql elif training_resource_info['poolSelect']!="全部" and training_resource_info['empNameSelect']=="全部" and\ training_resource_info['statusSelect']!="全部" and training_resource_info['sourceSelect']!="全部": sql = 'select count(customer_id) from customer where source = "%s" and pool_type = "%s" and last_status="%s"' \ % (training_resource_info['sourceSelect'],training_resource_info['poolSelect'], training_resource_info['statusSelect'])+time_base_sql return sql # 获取cookie self.training_resource_init() # 选择加载资源模块 Service.get_ele( self.driver, By.CSS_SELECTOR, "#content > div.row.con-margin.con-body-header > div:nth-child(1) > ul > li.active > a" ).click() TrainingResource.training_resource(self.driver, training_resource_info) # 系统提示搜索条件 if Service.is_Element_present( self.driver, By.CSS_SELECTOR, "body > div.bootbox.modal.fade.mydialog.in > div > div > " "div.modal-footer > button"): actual = "query-fail" self.assertEqual(actual, expect) # 关闭 self.driver.quit() else: # 判断是否查询出数据 training_resource_query_result = Service.get_ele( self.driver, By.CSS_SELECTOR, "table#personal-table tbody").text # 市场营销有上传过数据 if training_resource_query_result != "无符合条件的记录": # 前端页面显示数据数,根据状态(不同状态数量不同) query_count_result = Service.get_ele( self.driver, By.CSS_SELECTOR, "span.pagination-info").text result = re.match('^显示.*,总.*?(\d+)', query_count_result) print(result.group(1)) sql = joint_sql() print(sql) if sql: query_connect_count = Utility.get_connect_one( sql, "../config/data_base") print(query_connect_count) if int(result.group(1)) == int(query_connect_count[0]): actual = 'query-pass' else: actual = 'query-fail' self.assertEqual(actual, expect) else: print("查询结果为空") self.driver.close()
import re import time import unittest from parameterized import parameterized from selenium import webdriver from selenium.webdriver.common.by import By from gui.common.trainees_management.TraineesManagement import TraineesManagement from gui.util.Service import Service from gui.util.Utility import Utility # 数据 trainees_management_data = Utility.read_json( "../test_data/trainees_management_data/trainees_management_data") class TraineesManagementTest(unittest.TestCase): # 自定义,初始化driver,窗口最大化,隐式等待 def setUp(self): self.driver = webdriver.Firefox() self.driver.maximize_window() self.driver.implicitly_wait(10) self.config_info = Utility.read_json("../config/data_base") self.url = self.config_info["BASEURL"] self.driver.get(self.url) # 添加cookie #content > div.row.con-margin.con-body-header > ul > li.active > a def common_resource_pool_init(self): # 添加cookie信息,跳转到登陆后首页 Service.add_cookie(self.driver, self.url, "../config/director_study_data_cookie")
import time from parameterized import parameterized from selenium.webdriver.common.by import By from gui.common.login.Login import Login from gui.util.Service import Service import unittest from selenium import webdriver from gui.util.Utility import Utility # 打开首页 open_page_data = Utility.read_json("../test_data/login_data/open_page_data") # 登陆数据 login_data = Utility.read_json("../test_data/login_data/login_data") class LoginTest(unittest.TestCase): # 自定义,初始化driver,窗口最大化,隐式等待 def setUp(self): self.driver = webdriver.Firefox() self.driver.maximize_window() self.driver.implicitly_wait(10) self.url = Utility.read_json("../config/data_base")["BASEURL"] # 测试首页 @parameterized.expand(open_page_data) def test_open_page(self, expect): open_page_url = self.url Login.open_page(self.driver, open_page_url)
import re import unittest from parameterized import parameterized from selenium import webdriver from selenium.webdriver.common.by import By from gui.common.trainees_management.StudentsVacate import StudentsVacate from gui.util.Service import Service from gui.util.Utility import Utility students_vacate_test_data = Utility.read_json( "../test_data/trainees_management_data/students_vacate_data") class StudentsVacateTest(unittest.TestCase): # 自定义,初始化driver,窗口最大化,隐式等待 def setUp(self): self.driver = webdriver.Firefox() self.driver.maximize_window() self.driver.implicitly_wait(10) self.config_info = Utility.read_json("../config/data_base") self.url = self.config_info["BASEURL"] self.driver.get(self.url) # 添加cookie def students_vacate_init(self): # 添加cookie信息,跳转到登陆后首页 Service.add_cookie(self.driver, self.url, "../config/director_study_data_cookie") # 点击市场营销,分配资源
from gui.util.Service import Service from gui.util.Utility import Utility # 查询 测试用例,数据 marketing_query_data = Service.get_excell_data( "C:/Users/wang/Desktop/woniuboss4.0/gui/test_data/personnel_management_data/testCase.xlsx", "marketing_query", 3, 4) marketing_add_data = Service.get_excell_data( "C:/Users/wang/Desktop/woniuboss4.0/gui/test_data/personnel_management_data/testCase.xlsx", "marketing_add", 3, 4) # 页面数据 marketing_page_data = Utility.read_json( "C:/Users/wang/Desktop/woniuboss4.0/gui/test_data/marketing_data/class_manager_data" ) # 不同区域、不同状态、入库时间 # class_manager_data = Utility.read_json("../../test_data/marketing_data/class_manager_data") class MarketingTest(unittest.TestCase): # 自定义,初始化driver,窗口最大化,隐式等待 def setUp(self): self.driver = Service.get_driver() # Jump targets module Service.jump_target_module(self.driver, marketing_page_data["setUp"]["url_path"], marketing_page_data["setUp"]["cookie_path"],
import unittest from parameterized import parameterized from selenium import webdriver from selenium.webdriver.common.by import By from gui.common.trainees_management.CourseArrangement import CourseArrangement from gui.util.Service import Service from gui.util.Utility import Utility course_arrangement_test_data = Utility.read_json( "../test_data/trainees_management_data/course_arrangement_data") class CourseArrangementTest(unittest.TestCase): # 自定义,初始化driver,窗口最大化,隐式等待 def setUp(self): self.driver = webdriver.Firefox() self.driver.maximize_window() self.driver.implicitly_wait(10) self.config_info = Utility.read_json("../config/data_base") self.url = self.config_info["BASEURL"] self.driver.get(self.url) # 添加cookie def course_arrangement_init(self): # 添加cookie信息,跳转到登陆后首页 Service.add_cookie(self.driver, self.url, "../config/director_study_data_cookie") # 点击市场营销,分配资源 Service.get_ele(self.driver, By.PARTIAL_LINK_TEXT, "学员管理").click()
import re import unittest from parameterized import parameterized from selenium import webdriver from selenium.webdriver.common.by import By from gui.common.trainees_management.EvaluationRecords import EvaluationRecords from gui.util.Service import Service from gui.util.Utility import Utility evaluation_records_test_data = Utility.read_json("../test_data/trainees_management_data/evaluation_records_data") '''学员管理 子模块 测评记录''' class Evaluation_Records_Test(unittest.TestCase): # 自定义,初始化driver,窗口最大化,隐式等待 def setUp(self): self.driver = webdriver.Firefox() self.driver.maximize_window() self.driver.implicitly_wait(10) self.config_info = Utility.read_json("../config/data_base") self.url = self.config_info["BASEURL"] self.driver.get(self.url) # 添加cookie def evaluation_records_test_init(self): # 添加cookie信息,跳转到登陆后首页 Service.add_cookie(self.driver, self.url, "../config/director_study_data_cookie") # 点击市场营销,分配资源 Service.get_ele(self.driver, By.PARTIAL_LINK_TEXT, "学员管理").click() Service.get_ele(self.driver, By.PARTIAL_LINK_TEXT, "测评记录").click()
import unittest from parameterized import parameterized from selenium import webdriver from selenium.webdriver.common.by import By from gui.common.trainees_management.StagedEvaluation import StagedEvaluation from gui.util.Service import Service from gui.util.Utility import Utility staged_evaluation_test_data = Utility.read_json( "../test_data/trainees_management_data/staged_evaluation_data") class StagedEvaluationTest(unittest.TestCase): # 自定义,初始化driver,窗口最大化,隐式等待 def setUp(self): self.driver = webdriver.Firefox() self.driver.maximize_window() self.driver.implicitly_wait(10) self.config_info = Utility.read_json("../config/data_base") self.url = self.config_info["BASEURL"] self.driver.get(self.url) # 添加cookie def staged_evaluation_test_init(self): # 添加cookie信息,跳转到登陆后首页 Service.add_cookie(self.driver, self.url, "../config/director_study_data_cookie") # 点击市场营销,分配资源
query_employee_data = Service.get_excell_data( "C:/Users/wang/Desktop/woniuboss4.0/gui/test_data/personnel_management_data/testCase.xlsx", "query", 3, 4) # 新增 测试用例,数据 add_employee_data = Service.get_excell_data( "C:/Users/wang/Desktop/woniuboss4.0/gui/test_data/personnel_management_data/testCase.xlsx", "add", 3, 4) modify_employee_data = Service.get_excell_data( "C:/Users/wang/Desktop/woniuboss4.0/gui/test_data/personnel_management_data/testCase.xlsx", "modify", 3, 4) # 页面数据 page_data = Utility.read_json( "C:/Users/wang/Desktop/woniuboss4.0/gui/test_data/personnel_management_data/page_obj_data" ) class PersonnelManagementTest(unittest.TestCase): # get driver ,get url, add cookie def setUp(self): self.driver = Service.get_driver() Service.jump_target_module(self.driver, page_data["setUp"]["url_path"], page_data["setUp"]["cookie_path"], page_data["setUp"]["locate_mode"], page_data["setUp"]["locate_msg"]) '''查询员工''' @parameterized.expand(query_employee_data)
import re import time import unittest from parameterized import parameterized from selenium import webdriver from selenium.webdriver.common.by import By from gui.common.training_resource.CommonResourcePool import CommonResourcePool from gui.util.Service import Service from gui.util.Utility import Utility common_resource_pool_data = Utility.read_json( "../test_data/training_resource/query_common_resource_pool_data") class CommonResourcePoolTest(unittest.TestCase): # 自定义,初始化driver,窗口最大化,隐式等待 def setUp(self): self.driver = webdriver.Firefox() self.driver.maximize_window() self.driver.implicitly_wait(10) self.url = Utility.read_json("../config/data_base")["BASEURL"] self.driver.get(self.url) # 添加cookie #content > div.row.con-margin.con-body-header > ul > li.active > a def common_resource_pool_init(self): # 添加cookie信息,跳转到登陆后首页 Service.add_cookie(self.driver, self.url, "../config/consulting_competent_data_cookie")
from selenium.webdriver.common.by import By from gui.util.Service import Service from gui.util.Utility import Utility today_attendance_test_data = Utility.read_json( "../test_data/trainees_management_data/today_morning_exam_data") class TodayMorningExam: # 姓名 元素 @classmethod def today_morning_input_name(cls, driver, data): morning_input_name_ele = Service.get_ele( driver, By.CSS_SELECTOR, "#mornExam > " "div.col-lg-8.col-md-8.col-xs-12.con-body-padding.text-left > input" ) # 值 Service.input_value_ele(morning_input_name_ele, data) # 搜索 按钮 元素 @classmethod def button_morning_query(cls, driver): Service.get_ele( driver, By.CSS_SELECTOR, "#mornExam > " "div.col-lg-8.col-md-8.col-xs-12.con-body-padding.text-left > button" ).click() # 搜索操作 @classmethod def today_attendance_query(cls, driver, query_info):
import re import time import unittest from parameterized import parameterized from selenium import webdriver from selenium.webdriver.common.by import By from gui.common.training_resource.AllocatingResource import AllocatingResource from gui.util.Service import Service from gui.util.Utility import Utility allocating_resource_test = Utility.read_json("../test_data/training_resource/query_allocating_resource_data") '''培训资源子模块,分配资源''' class AllocatingResourceTest(unittest.TestCase): # 自定义,初始化driver,窗口最大化,隐式等待 def setUp(self): self.driver = webdriver.Firefox() self.driver.maximize_window() self.driver.implicitly_wait(10) self.url = Utility.read_json("../config/data_base")["BASEURL"] self.driver.get(self.url) # 添加cookie #content > div.row.con-margin.con-body-header > ul > li.active > a def allocating_resource_test_init(self): # 添加cookie信息,跳转到登陆后首页 Service.add_cookie(self.driver, self.url, "../config/consulting_competent_data_cookie")