Ejemplo n.º 1
0
class L_Test(unittest.TestCase):
    login = Util.get_json('..\\..\\conf\\Login_Conf\\L_Excel.conf')[0]
    login_info = Util.get_excel(login)

    @classmethod
    def setUpClass(cls):
        pass

    def setUp(self):
        self.driver = Service.get_driver()
        Service.open_page(self.driver)

    @parameterized.expand(login_info)
    def test_login(self, username, userpass, expect):
        L_Action(self.driver).do_login(username, userpass)
        if Service.is_element_present(self.driver, "xpath",
                                      "/html/body/div[2]/div[2]/ul/li[2]/a"):
            actual = "login_pass"
        else:
            actual = "login_fail"
        self.assertEqual(actual, expect)

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

    @classmethod
    def tearDownClass(cls):
        pass
Ejemplo n.º 2
0
class C_Test(unittest.TestCase):
    # 获取排课数据
    couk = Util.get_json(
        '..\\..\\conf\\TeachingManagement_Conf\\testinfo.conf')[3]
    cour_info = Util.get_excel(couk)

    # 获取查询数据TeachingManagement
    query = Util.get_json(
        '..\\..\\conf\\TeachingManagement_Conf\\testinfo.conf')[4]
    query_info = Util.get_excel(query)

    @classmethod
    def setUpClass(cls):
        pass

    def setUp(self):
        self.driver = Service.get_driver()
        Service.open_page(self.driver)
        info = [
            'WNCD000', 'woniu123', 'woniu123',
            '//*[@id="nav2"]/div[7]/div[1]/a',
            '//*[@id="list-11"]/div/ul/li[1]/a'
        ]
        Service.open_module_connect_zz(self.driver, info)

    #排课测试
    @parameterized.expand(cour_info)
    def test_course(self, *cour_info):  #*不定长参数
        C_Action(self.driver).do_course(cour_info[:-1])
        msg1 = Service.get_hint(self.driver,
                                '/html/body/div[16]/div/div/div[2]/div')
        if '排课成功' in msg1:
            actual = "cour_pass"
        else:
            actual = "cour_fail"
        self.assertEqual(actual, cour_info[-1])

    #查询测试
    @parameterized.expand(query_info)
    def test_query(self, *query_info):  #*不定长参数
        C_Action(self.driver).do_query(query_info[:-1])
        #C_Action(self.driver).click_query_button()
        msg = Service.get_hint(
            self.driver,
            '//*[@id="course"]/div[2]/div[2]/div[4]/div[1]/span[1]')
        if len(msg) >= 1:
            actual = "query_pass"
        else:
            actual = "query_fail"
        self.assertEqual(actual, query_info[-1])

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

    @classmethod
    def tearDownClass(cls):
        pass
 def setUp(self):
     # 获取绕过登录的信息
     login_ele = Util.get_json(
         "..\\..\\conf\\ResourceAdministration_Conf\\RA_Login.conf")[1]
     self.driver = Service.get_driver()
     Service.open_page(self.driver)
     Service.open_module_connect(self.driver, login_ele)
     self.ele = Util.get_json(
         "..\\..\\conf\\ResourceAdministration_Conf\\RA_Element.conf")
Ejemplo n.º 4
0
class T_Test(unittest.TestCase):
    # 获取搜索数据
    sous = Util.get_json('..\\..\\conf\\TeachingManagement_Conf\\testinfo.conf')[1]
    sous_info = Util.get_excel(sous)

    # 获取面试数据
    interview = Util.get_json('..\\..\\conf\\TeachingManagement_Conf\\testinfo.conf')[2]
    interview_info = Util.get_excel(interview)

    @classmethod
    def setUpClass(cls):
        pass

    def setUp(self):
        self.driver = Service.get_driver()
        Service.open_page(self.driver)
        info = ['WNCD000','woniu123','woniu123','//*[@id="nav2"]/div[7]/div[1]/a','//*[@id="list-11"]/div/ul/li[2]/a']
        Service.open_module_connect_zz(self.driver,info)

    #搜索功能测试
    @parameterized.expand(sous_info)
    def test_search(self,*sous_info):#*不定长参数
        Tech(self.driver).do_search(sous_info[:-1])
        Tech(self.driver).click_search_button()
        msg = Service.get_hint(self.driver,"/html/body/div[8]/div[2]/div/div/div/div/div[2]/div[2]/div[4]/div[1]/span[1]")
        if len(msg) >= 1:
            actual = "search_pass"
        else:
            actual = "search_fail"
        self.assertEqual(actual,sous_info[-1])

    #面试测试
    @parameterized.expand(interview_info)
    def test_interview(self,*interview_info):
        Tech(self.driver).do_interview(interview_info[:-1])
        msg = Service.get_hint(self.driver,'/html/body/div[10]/div/div/div[2]/div')
        if "保存成功" in msg:
            actual = "interview_pass"
        else:
            actual = "interview_fail"

        self.assertEqual(actual,interview_info[-1])

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

    @classmethod
    def tearDownClass(cls):
        pass
Ejemplo n.º 5
0
 def start(cls):
     from HTMLTestRunner import HTMLTestRunner
     suite = unittest.TestSuite()
     loader = unittest.TestLoader()
     # 通过加载器对象来加载测试类。参数name需要提供测试类的类全名(从根目录开始的路径)
     tests1 = loader.loadTestsFromNames(Util.get_path("..\\..\\conf\\test"))
     suite.addTest(tests1)
     with open(f"..\\..\\report\\test{Util.get_ctime()}.html",
               "w",
               encoding="utf8") as op:
         runner = HTMLTestRunner(stream=op, verbosity=2)
         runner.run(suite)
Ejemplo n.º 6
0
 def open_module_connect(cls, driver, ele):
     from WoniuBoss_GUI_Test.lib.Login.Login_Action import L_Action
     ele2 = Util.get_json("..\\..\\conf\\Login_Conf\\L_Element.conf")
     #登录
     L_Action(driver).do_login(ele["username"], ele["userpass"])
     #输入二级密码
     cls.click_motion(driver, "xpath", ele2[0]["decode_xpath"])
     cls.input_motion(driver, "xpath", ele2[0]["secondary_password_xpath"],
                      ele["secondary_password"])
     cls.click_motion(driver, "xpath", ele2[0]["confirm_decode_xpath"])
     #点击大模块
     driver.find_element_by_xpath(ele["big_module"]).click()
     #点击子模块
     driver.find_element_by_xpath(ele["small_module"]).click()
Ejemplo n.º 7
0
class Stu_Manage_Test(unittest.TestCase):
    def setUp(self) -> None:
        self.driver = Service.get_driver()
    def tearDown(self) -> None:
        self.driver.close()

    # 获取要查询的数据
    search_conf = Util.get_json('../../conf/StuManage_Conf/StuManage_Excel.conf')[3]
    search_data = Util.get_excel(search_conf)
    @parameterized.expand(search_data)
    #学员信息查询测试
    def test_search_stuInfo(self,name,expect):
        search_info = {'name':name,'expect':expect}
        Student_Manage(self.driver).search_stu_info(search_info)
        #获取查询后的记录数
        msg = self.driver.find_element_by_xpath("//span[@class='pagination-info']").get_attribute("innerHTML")
        regex = re.compile('总共.(\d+?)')
        num = regex.findall(msg)[0]
        if int(num) >= 1: #大于等于1条,说明查到数据了
            actual = 'search-success'
        else:
            actual = 'search-fail'
        self.assertEqual(actual, expect)

    alter_conf = Util.get_json('../../conf/StuManage_Conf/StuManage_Excel.conf')[4]
    alter_data = Util.get_excel(alter_conf)
    @parameterized.expand(alter_data)
    #随机修改学员信息测试
    def test_alter_stu_info(self,phone,status,expect):
        alter_info = {'phone':phone,'status':status,'expect':expect}
        Student_Manage(self.driver).alter_stu_info(alter_info)
        ele = self.driver.find_element_by_xpath("//div[@class='bootbox-body']")
        msg = ele.get_attribute('innerHTML')
        if msg == '操作成功':
            actual = 'alter-success'
        else:
            actual = 'alter-fail'
        self.assertEqual(actual, expect)

    evaluate_conf = Util.get_json('../../conf/StuManage_Conf/StuManage_Excel.conf')[5]
    evaluate_data = Util.get_excel(evaluate_conf)
    @parameterized.expand(evaluate_data)
    #日常考评查询测试
    def test_search_evaluate(self,name,expect):
        search_info = {'name':name,'expect':expect}
        Student_Manage(self.driver).search_evaluate(search_info )
        ele = self.driver.find_element_by_xpath("//div[2]/table/tbody/tr/td")
        msg = ele.get_attribute('innerHTML')
        if msg == '无符合条件的记录':
            actual = 'search-fail'
        else:
            actual = 'search-success'
        self.assertEqual(actual, expect)

    #随机录入周考成绩测试
    add_grade_conf = Util.get_json('../../conf/StuManage_Conf/StuManage_Excel.conf')[6]
    add_grade_data = Util.get_excel(add_grade_conf)
    @parameterized.expand(add_grade_data)
    def test_add_week_grade(self,stage,grade,expect):
        grade_info = {'stage':stage,'grade':grade,'expect':expect}
        Student_Manage(self.driver).add_week_grade(grade_info )
        if Service.is_element_present(self.driver,'xpath',"//div[@class='bootbox-body']") == True:
            actual = 'add-fail'
        else:
            actual = 'add-success'
        self.assertEqual(actual, expect)

    #查询周考成绩测试
    search_grade_conf = Util.get_json('../../conf/StuManage_Conf/StuManage_Excel.conf')[7]
    search_grade_data = Util.get_excel(search_grade_conf)
    @parameterized.expand(search_grade_data)
    def test_search_week_grade(self,area,classes,name,expect):
        search_grade_info = {'area': area, 'classes': classes, 'name':name,'expect': expect}
        Student_Manage(self.driver).search_week_grade(search_grade_info)
        ele = self.driver.find_element_by_xpath("//div[2]/table/tbody/tr/td")
        msg = ele.get_attribute('innerHTML')
        if msg == '无符合条件的记录':
            actual = 'search-fail'
        else:
            actual = 'search-success'
        self.assertEqual(actual, expect)
        
    # 阶段考评查询测试
    search_stagegrade_conf = Util.get_json('../../conf/StuManage_Conf/StuManage_Excel.conf')[8]
    search_stagegrade_data = Util.get_excel(search_stagegrade_conf)
    @parameterized.expand(search_stagegrade_data)
    def test_search_week_grade(self,area,classes,name,expect):
        search_stagegrade_info = {'area': area, 'classes': classes, 'name':name,'expect': expect}
        Student_Manage(self.driver).search_week_grade(search_stagegrade_info)
        ele = self.driver.find_element_by_xpath("//div[2]/table/tbody/tr/td")
        msg = ele.get_attribute('innerHTML')
        if msg == '无符合条件的记录':
            actual = 'search-fail'

        else:
            actual = 'search-success'
        self.assertEqual(actual, expect)

    #阶段考评录入测试
    add_stagegrade_conf = Util.get_json('../../conf/StuManage_Conf/StuManage_Excel.conf')[9]
    add_stagegrade_data = Util.get_excel(add_stagegrade_conf)
    @parameterized.expand(add_stagegrade_data)
    def test_add_week_grade(self,classes,stage,grade,evaluate,expect):
        grade_info = {'classes':classes,'stage':stage,'grade':grade,'evaluate':evaluate,'expect':expect}
        Student_Manage(self.driver).add_stage_grade(grade_info )
        if Service.is_element_present(self.driver,'xpath',"//div[@class='bootbox-body']") == True:
            actual = 'add-fail'

        else:
            actual = 'add-success'
        self.assertEqual(actual, expect)
class CM_Test(unittest.TestCase):

    add_conf = Util.get_json(
        r'..\..\conf\ClassServiceManagement_Conf\CSM_Excel.conf')[0]
    add_info = Util.get_excel(add_conf)

    query_conf = Util.get_json(
        r'..\..\conf\ClassServiceManagement_Conf\CSM_Excel.conf')[1]
    query_info = Util.get_excel(query_conf)

    def setUp(self):
        self.driver = Service.get_driver()
        Service.open_page(self.driver)
        info = [
            'WNCD051', 'Woniu123', 'Woniu123',
            '/html/body/div[4]/div[2]/div[8]/div[1]/a',
            '/html/body/div[4]/div[2]/div[8]/div[2]/div/ul/li[1]/a'
        ]
        Service.open_module_connect_zz(self.driver, info)

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

    @parameterized.expand(add_info)
    def test_CSM_add(cls, classnumber, public, tnumber, expect):
        old_text = cls.driver.find_element_by_xpath\
            ('//*[@id="content"]/div[2]/div/div/div/div[2]/div[2]/div[4]/div[1]/span[1]').text

        addclass_data = {
            'classnumber': classnumber,
            'public': public,
            'tnumber': tnumber,
            'expect': expect
        }
        CSM_Action(cls.driver).CSM_add(addclass_data)

        new_text = cls.driver.find_element_by_xpath\
            ('//*[@id="content"]/div[2]/div/div/div/div[2]/div[2]/div[4]/div[1]/span[1]').text

        if old_text != new_text:
            add_actual = 'add_pass'
        else:
            add_actual = 'add_fail'

        cls.assertEqual(add_actual, addclass_data['expect'])

    @parameterized.expand(query_info)
    def test_CSM_query(cls, sclname, all, expect):

        queryclassdata = {'sclname': sclname, 'all': all, 'expect': expect}
        CSM_Action(cls.driver).CSM_query(queryclassdata)

        old_query_num = Service.get_hint \
            (cls.driver, '//*[@id="content"]/div[2]/div/div/div/div[2]/div[2]/div[4]/div[1]/span[1]')

        old_query_number = re.findall(r'共(.*?)条', old_query_num)[0]
        new_num = old_query_number.strip()

        if new_num.isdigit():
            query_actual = 'query_pass'
        else:
            query_actual = 'query_fail'

        cls.assertEqual(query_actual, queryclassdata['expect'])
class TR_Test(unittest.TestCase):
    #获取新增数据
    add = Util.get_json("..\\..\\conf\\ResourceAdministration_Conf\\RA_Excel.conf")[0]
    add_info = Util.get_excel(add)
    #获取查询数据
    query = Util.get_json("..\\..\\conf\\ResourceAdministration_Conf\\RA_Excel.conf")[1]
    query_info = Util.get_excel(query)
    #获取跟踪数据
    tail = Util.get_json("..\\..\\conf\\ResourceAdministration_Conf\\RA_Excel.conf")[2]
    tail_info = Util.get_excel(tail)
    # 获取修改数据
    alter = Util.get_json("..\\..\\conf\\ResourceAdministration_Conf\\RA_Excel.conf")[3]
    alter_info = Util.get_excel(alter)

    @classmethod
    def setUpClass(cls):
        pass

    def setUp(self):
        ele = Util.get_json("..\\..\\conf\\ResourceAdministration_Conf\\RA_Login.conf")[0]
        self.driver = Service.get_driver()
        Service.open_page(self.driver)
        Service.open_module_connect(self.driver,ele)
        self.ele = Util.get_json("..\\..\\conf\\ResourceAdministration_Conf\\RA_Element.conf")

    #培训资源新增测试
    @parameterized.expand(add_info)
    def test_add_TR(self,*add_info):
        msg_xpath = '//*[@id="content"]/div[3]/div/div[1]/div[2]/div[4]/div[1]/span[1]'
        #第一次默认查询,获取数据总条数
        Service.click_motion(self.driver,'xpath',self.ele[0]["TR_search_xpath"])
        old_msg = Service.get_hint(self.driver,msg_xpath)
        #完成新增
        TR_Action(self.driver).do_add(add_info[:-1])
        self.driver.refresh()
        #第二次默认查询,获取数据总条数
        Service.click_motion(self.driver,'xpath',self.ele[0]["TR_search_xpath"])
        new_msg = Service.get_hint(self.driver,msg_xpath)

        if old_msg != new_msg:
            actual = "add_pass"
        else:
            actual = "add_fail"
        self.assertEqual(actual, add_info[-1])

    #培训资源废弃测试
    def test_delete_TR(self):
        expect = "delete_pass"
        msg_xpath = '//*[@id="content"]/div[3]/div/div[1]/div[2]/div[4]/div[1]/span[1]'
        # 第一次默认查询,获取数据总条数
        Service.click_motion(self.driver,'xpath',self.ele[0]["TR_search_xpath"])
        old_msg = Service.get_hint(self.driver, msg_xpath)
        #完成删除
        TR_Action(self.driver).do_delete()
        self.driver.refresh()
        # 第二次默认查询,获取数据总条数
        Service.click_motion(self.driver,'xpath',self.ele[0]["TR_search_xpath"])
        new_msg = Service.get_hint(self.driver, msg_xpath)

        if old_msg != new_msg:
            actual = "delete_pass"
        else:
            actual = "delete_fail"
        self.assertEqual(actual, expect)

    #培训资源查询测试
    @parameterized.expand(query_info)
    def test_query_TR(self,*query_info):
        msg_xpath = '//*[@id="content"]/div[3]/div/div[1]/div[2]/div[4]/div[1]/span[1]'
        #完成查询
        TR_Action(self.driver).do_query(query_info[:-1])
        #获取信息
        msg = Service.get_hint(self.driver,msg_xpath)
        #提取信息
        if len(msg) >= 1:
            actual = "query_pass"
        else:
            actual = "query_fail"
        self.assertEqual(actual, query_info[-1])

    #培训资源跟踪资源
    @parameterized.expand(tail_info)
    def test_tail_TR(self,*tail_info):
        #获取返回的电话
        phone = TR_Action(self.driver).do_tail(tail_info[:-1])
        self.driver.refresh()
        #输入电话并查询
        Service.input_motion(self.driver,"xpath",self.ele[3]["TR_condition_xpath"],phone)
        Service.click_motion(self.driver,'xpath', self.ele[0]["TR_search_xpath"])
        #获取查询出来的学员信息的状态
        time.sleep(1)
        status = self.driver.find_element_by_xpath('//*[@id="personal-table"]/tbody/tr[1]/td[5]').text
        if tail_info[1] == status:
            actual = "tail_pass"
        else:
            actual = "tail_fail"
        self.assertEqual(actual, tail_info[-1])

    #培训资源修改测试
    @parameterized.expand(alter_info)
    def test_alter_TR(self,*alter_info):
        print(alter_info)
        TR_Action(self.driver).do_alter(alter_info[:-1])
        self.driver.refresh()
        Service.input_motion(self.driver,"xpath","//*[@id='content']/div[2]/div/input[3]", alter_info[1])
        Service.click_motion(self.driver,"xpath","//*[@id='content']/div[2]/div/button")
        msg = Service.get_hint(self.driver,'//*[@id="content"]/div[3]/div/div[1]/div[2]/div[4]/div[1]/span[1]')
        if "总共 1 条记录" in msg:
            actual = "alter_pass"
        else:
            actual = "alter_fail"
        self.assertEqual(actual, alter_info[-1])

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

    @classmethod
    def tearDownClass(cls):
        pass
Ejemplo n.º 10
0
 def open_page(cls, driver):
     contents = Util.get_json("..\\..\\conf\\base.conf")[0]
     url = f"{contents['PROTOCOL']}://{contents['IP']}:{contents['PORT']}/{contents['PROGRAM']}"
     driver.get(url)
class CR_Test(unittest.TestCase):
    # 获取查询数据
    query = Util.get_json(
        "..\\..\\conf\\ResourceAdministration_Conf\\RA_Excel.conf")[4]
    query_info = Util.get_excel(query)
    # 获取认领数据
    claim = Util.get_json(
        "..\\..\\conf\\ResourceAdministration_Conf\\RA_Excel.conf")[5]
    claim_info = Util.get_excel(claim)

    @classmethod
    def setUpClass(cls):
        pass

    def setUp(self):
        #获取绕过登录的信息
        login_ele = Util.get_json(
            "..\\..\\conf\\ResourceAdministration_Conf\\RA_Login.conf")[0]
        self.driver = Service.get_driver()
        Service.open_page(self.driver)
        Service.open_module_connect(self.driver, login_ele)
        self.ele = Util.get_json(
            "..\\..\\conf\\ResourceAdministration_Conf\\RA_Element.conf")

    #公共资源查询测试
    @parameterized.expand(query_info)
    def test_query_CR(self, *query_info):
        msg_xpath = '//*[@id="content"]/div[3]/div/div[1]/div[2]/div[4]/div[1]/span[1]'
        time.sleep(2)
        Service.click_motion(self.driver, 'xpath',
                             self.ele[7]["CR_commonality_xpath"])
        #执行测试动作
        CR_Action(self.driver).do_query(query_info[:-1])
        #获取列表信息,并提取总数
        msg = Service.get_hint(self.driver, msg_xpath)
        if len(msg) >= 1:
            actual = "query_pass"
        else:
            actual = "query_fail"
        self.assertEqual(actual, query_info[-1])

    #公共资源认领测试
    # @parameterized.expand(claim_info)
    # def test_claim_CR(self,*claim_info):
    #     num_msg = '//*[@id="content"]/div[3]/div/div[1]/div[2]/div[4]/div[1]/span[1]'
    #     #在培训资源模块中选择资源库
    #     Service.select_motion(self.driver, 'xpath', self.ele[7]["CR_resource_xpath"],"临时池")
    #     #获取学员信息条数
    #     old_msg = Service.get_hint(self.driver,num_msg)
    #     #完成认领动作
    #     Service.click_motion(self.driver, 'xpath', self.ele[7]["CR_commonality_xpath"])
    #     CR_Action(self.driver).do_claim()
    #     self.driver.refresh()
    #     #回到培训资源模块查询数据条数
    #     Service.click_motion(self.driver, 'xpath', self.ele[7]["CR_administration_xpath"])
    #     Service.click_motion(self.driver, 'xpath', self.ele[7]["CR_train_xpath"])
    #     Service.select_motion(self.driver, 'xpath', self.ele[7]["CR_resource_xpath"], "临时池")
    #     new_msg = Service.get_hint(self.driver, num_msg)
    #
    #     if old_msg != new_msg:
    #         actual = "claim_pass"
    #     else:
    #         actual = "claim_fail"
    #     self.assertEqual(actual, claim_info[-1])

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

    @classmethod
    def tearDownClass(cls):
        pass
Ejemplo n.º 12
0
 def __init__(self, driver):
     self.driver = driver
     self.ele = Util.get_json('..\\..\\conf\\Login_Conf\\L_Element.conf')
Ejemplo n.º 13
0
class SSI_Test(unittest.TestCase):

    query_conf = Util.get_json(
        r'..\..\conf\ClassServiceManagement_Conf\SSI_Excel.conf')[0]
    query_info = Util.get_excel(query_conf)

    two_query_conf = Util.get_json(
        r'..\..\conf\ClassServiceManagement_Conf\SSI_Excel.conf')[1]
    two_query_info = Util.get_excel(two_query_conf)

    Sgin_conf = Util.get_json(
        r'..\..\conf\ClassServiceManagement_Conf\SSI_Excel.conf')[2]
    Sgin_info = Util.get_excel(Sgin_conf)

    Return_conf = Util.get_json(
        r'..\..\conf\ClassServiceManagement_Conf\SSI_Excel.conf')[3]
    Return_info = Util.get_excel(Return_conf)

    Bactch_ssi_conf = Util.get_json(
        r'..\..\conf\ClassServiceManagement_Conf\SSI_Excel.conf')[4]
    Bactch_ssi_info = Util.get_excel(Bactch_ssi_conf)

    def setUp(self):
        self.driver = Service.get_driver()
        Service.open_page(self.driver)
        info = [
            'WNCD051', 'Woniu123', 'Woniu123',
            '/html/body/div[4]/div[2]/div[8]/div[1]/a',
            '//*[@id="list-31"]/div/ul/li[2]/a'
        ]
        Service.open_module_connect_zz(self.driver, info)

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

    @parameterized.expand(query_info)
    def test_SSI_query(cls, ssiname, expect):

        ssiquerydata = {'ssiname': ssiname, 'expect': expect}
        SSI_Action(cls.driver).do_query(ssiquerydata)

        time.sleep(1)
        text_contents = cls.driver.find_element_by_xpath(
            '//*[@id="stu-table"]/tbody/tr/td[2]').text

        if text_contents == "WNCD202005007":
            query_actual = 'query_pass'
        else:
            query_actual = 'query_fail'

        cls.assertEqual(query_actual, ssiquerydata['expect'])

    @parameterized.expand(two_query_info)
    def test_SSI_query_tow(cls, ssiname, expect):

        ssiquerydata_two = {'ssiname': ssiname, 'expect': expect}
        SSI_Action(cls.driver).do_query(ssiquerydata_two)

        time.sleep(1)
        ele = cls.driver.find_element_by_xpath(
            '//*[@id="stu-table"]/tbody/tr/td')
        msg = ele.get_attribute('innerHTML')

        if "无符合" in msg:
            query_actual = 'query_fail'
        else:
            query_actual = 'query_pass'

        cls.assertEqual(query_actual, ssiquerydata_two['expect'])

    @parameterized.expand(Sgin_info)
    def test_SSI(cls, ssicontents, expect):
        SSI_Action(cls.driver).click_SSI_class()

        ssistetedata = {'ssicontents': ssicontents, 'expect': expect}
        SSI_Action(cls.driver).do_ssi(ssistetedata)

        time.sleep(1)
        text_content = cls.driver.find_element_by_xpath \
            ('//*[@id="236"]/tbody/tr[3]/td[6]').text

        # 断言
        if "正常" in text_content or "请假" in text_content:
            SginIn_actual = 'Sgin_pass'
        else:
            SginIn_actual = 'Sgin_fail'

        cls.assertEqual(SginIn_actual, ssistetedata['expect'])

    @parameterized.expand(Return_info)
    def test_SSI_Return(cls, ssiname, expect):

        SSI_Action(cls.driver).click_SSI_class()

        old_text = cls.driver.find_element_by_xpath\
            ('//*[@id="panel-element-236"]/div/div[1]/div[2]/div[4]/div[1]/span[1]').text

        rnssidata = {'ssiname': ssiname, 'expect': expect}
        SSI_Action(cls.driver).do_Return(rnssidata)

        time.sleep(1)
        new_text = cls.driver.find_element_by_xpath\
            ('//*[@id="panel-element-236"]/div/div[1]/div[2]/div[4]/div[1]/span[1]').text

        if old_text == new_text:
            Return_actual = 'Return_pass'
        else:
            Return_actual = 'Return_fail'

        cls.assertEqual(Return_actual, rnssidata['expect'])

    @parameterized.expand(Bactch_ssi_info)
    def test_SSI_Bactch(cls, ssicontents_one, ssicontents_two,
                        ssicontents_three, expect):

        SSI_Action(cls.driver).click_SSI_class()

        Bactchdata = {
            'ssicontents_one': ssicontents_one,
            'ssicontents_two': ssicontents_two,
            'ssicontents_three': ssicontents_three,
            'expect': expect
        }
        SSI_Action(cls.driver).do_Bactch_ssi(Bactchdata)

        time.sleep(1)
        text_content_one = cls.driver.find_element_by_xpath \
            ('//*[@id="236"]/tbody/tr[2]/td[6]').text
        print(text_content_one)

        text_content_two = cls.driver.find_element_by_xpath \
            ('//*[@id="236"]/tbody/tr[4]/td[6]').text
        print(text_content_two)

        text_content_three = cls.driver.find_element_by_xpath \
            ('//*[@id="236"]/tbody/tr[5]/td[6]').text
        print(text_content_three)

        if ("正常" in text_content_one) and ("正常" in text_content_two) and (
                "正常" in text_content_three):
            Bactch_ssi_actual = 'Bactch_ssi_pass'
        else:
            Bactch_ssi_actual = 'Bactch_ssi_fail'

        cls.assertEqual(Bactch_ssi_actual, Bactchdata['expect'])
class STC_Test(unittest.TestCase):


    query_conf = Util.get_json(r'..\..\conf\\ClassServiceManagement_Conf\STC_Excel.conf')[0]
    query_info = Util.get_excel(query_conf)


    two_query_conf = Util.get_json(r'..\..\conf\\ClassServiceManagement_Conf\STC_Excel.conf')[1]
    two_query_info = Util.get_excel(two_query_conf)


    TurnClass_conf = Util.get_json(r'..\..\conf\\ClassServiceManagement_Conf\STC_Excel.conf')[2]
    TurnClass_info = Util.get_excel(TurnClass_conf)


    def setUp(cls):
        cls.driver = Service.get_driver()
        Service.open_page(cls.driver)
        info = ['WNCD051', 'Woniu123', 'Woniu123', '/html/body/div[4]/div[2]/div[8]/div[1]/a',
                '//*[@id="list-31"]/div/ul/li[4]/a']
        Service.open_module_connect_zz(cls.driver, info)

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


    @parameterized.expand(query_info)
    def test_SSI_query(cls, stcarea, stcstate, stcname, expect):
        time.sleep(1)
        old_text = cls.driver.find_element_by_xpath\
            ('//*[@id="stuInfo"]/div[2]/div[2]/div[4]/div[1]/span[1]').text

        stcquerydata = {'stcarea': stcarea, 'stcstate': stcstate,
                        'stcname': stcname, 'expect': expect}
        STC_Action(cls.driver).do_query(stcquerydata)

        time.sleep(1)
        new_text = cls.driver.find_element_by_xpath\
            ('//*[@id="stuInfo"]/div[2]/div[2]/div[4]/div[1]/span[1]').text

        if old_text != new_text:
            query_actual = 'query_pass'
        else:
            query_actual = 'query_fail'

        cls.assertEqual(query_actual, stcquerydata['expect'])


    @parameterized.expand(two_query_info)
    def test_SSI_query_tow(cls, stcarea, stcstate, stcname, expect):

        stcquerydata_two = {'stcarea': stcarea, 'stcstate': stcstate,
                        'stcname': stcname, 'expect': expect}
        STC_Action(cls.driver).do_query(stcquerydata_two)

        time.sleep(1)
        ele = cls.driver.find_element_by_xpath('//*[@id="stuInfo_table"]/tbody/tr/td')
        msg = ele.get_attribute('innerHTML')

        if "无符合" in msg:
            query_actual = 'query_fail'
        else:
            query_actual = 'query_pass'

        cls.assertEqual(query_actual, stcquerydata_two['expect'])


    @parameterized.expand(TurnClass_info)
    def test_STC_turnclass(cls , stcschool , stcclass , expect):

        turnclassdata = {'stcschool': stcschool, 'stcclass': stcclass, 'expect': expect}
        STC_Action(cls.driver).do_turnschool(turnclassdata)

        time.sleep(1)
        cls.driver.refresh()
        time.sleep(1)
        STC_Action(cls.driver).click_mould()
        text_contents = cls.driver.find_element_by_xpath\
            ('//*[@id="stuInfo_table"]/tbody/tr[3]/td[4]').text

        if text_contents == "WNCDC33":
            actual = 'TurnClass_pass'
        else:
            actual = 'TurnClass_fail'

        cls.assertEqual(actual, turnclassdata['expect'])
Ejemplo n.º 15
0
 def get_driver(cls):
     from selenium import webdriver
     contents = Util.get_json("..\\..\\conf\\base.conf")[0]
     driver = getattr(webdriver, contents['BROWSER'])()
     driver.implicitly_wait(10)
     return driver
Ejemplo n.º 16
0
class SL_Test(unittest.TestCase):

    add_conf = Util.get_json(
        r'..\..\conf\ClassServiceManagement_Conf\SL_Excel.conf')[0]
    add_info = Util.get_excel(add_conf)

    query_conf = Util.get_json(
        r'..\..\conf\ClassServiceManagement_Conf\SL_Excel.conf')[1]
    query_info = Util.get_excel(query_conf)

    tow_query_conf = Util.get_json(
        r'..\..\conf\ClassServiceManagement_Conf\SL_Excel.conf')[2]
    two_query_info = Util.get_excel(tow_query_conf)

    edit_conf = Util.get_json(
        r'..\..\conf\ClassServiceManagement_Conf\SL_Excel.conf')[3]
    edit_info = Util.get_excel(edit_conf)
    print(edit_info)

    def setUp(self):
        self.driver = Service.get_driver()
        Service.open_page(self.driver)
        info = [
            'WNCD051', 'Woniu123', 'Woniu123',
            '/html/body/div[4]/div[2]/div[8]/div[1]/a',
            '//*[@id="list-31"]/div/ul/li[3]/a'
        ]
        Service.open_module_connect_zz(self.driver, info)

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

    @parameterized.expand(add_info)
    def test_CSM_add(cls, leavetype, days, sname, points, contents, manage,
                     expect):
        old_text = cls.driver.find_element_by_xpath\
            ('//*[@id="content"]/div[2]/div/div/div/div[2]/div[2]/div[4]/div[1]/span[1]').text

        leavedata = {
            'leavetype': leavetype,
            'days': days,
            'sname': sname,
            'points': points,
            'contents': contents,
            'manage': manage,
            'expect': expect
        }
        from WoniuBoss_GUI_Test.lib.ClassServiceManagement.StudentLeave_Action import STU_Action
        STU_Action(cls.driver).do_add_leave(leavedata)

        new_text = cls.driver.find_element_by_xpath\
            ('//*[@id="content"]/div[2]/div/div/div/div[2]/div[2]/div[4]/div[1]/span[1]').text

        if old_text != new_text:
            add_actual = 'add_pass'
        elif old_text == new_text:
            add_actual = 'add_fail'
        else:
            add_actual = 'other_error'

        cls.assertEqual(add_actual, leavedata['expect'])

    @parameterized.expand(query_info)
    def test_CSM_query(cls, area, state, stuname, expect):

        leavequerydata = {
            'area': area,
            'state': state,
            'stuname': stuname,
            'expect': expect
        }

        from WoniuBoss_GUI_Test.lib.ClassServiceManagement.StudentLeave_Action import STU_Action
        STU_Action(cls.driver).do_query_leavename(leavequerydata)

        old_query_num = Service.get_hint \
            (cls.driver, '//*[@id="content"]/div[2]/div/div/div/div[2]/div[2]/div[4]/div[1]/span[1]')
        new_query_num = re.findall(r'共(.*?)条', old_query_num)[0]
        new_num = new_query_num.strip()

        if new_num.isdigit():
            query_actual = 'query_pass'
        else:
            query_actual = 'query_fail'

        cls.assertEqual(query_actual, leavequerydata['expect'])

    @parameterized.expand(two_query_info)
    def test_CSM_query_tow(cls, area, state, stuname, expect):

        leavequerydata = {
            'area': area,
            'state': state,
            'stuname': stuname,
            'expect': expect
        }

        from WoniuBoss_GUI_Test.lib.ClassServiceManagement.StudentLeave_Action import STU_Action
        STU_Action(cls.driver).do_query_leavename(leavequerydata)

        time.sleep(1)
        ele = cls.driver.find_element_by_xpath("//div[2]/table/tbody/tr/td")
        msg = ele.get_attribute('innerHTML')

        if "无符合条件" in msg:
            query_actual = 'query_fail'
        else:
            query_actual = 'query_pass'

        cls.assertEqual(query_actual, leavequerydata['expect'])

    @parameterized.expand(edit_info)
    def test_CSM_edit(cls, editname, levtype, pointstype, managecontents,
                      expect):
        old_content = cls.driver.find_element_by_xpath\
            ('//*[@id="leave-table"]/tbody/tr[1]/td[3]').text
        print(old_content)

        editleavedata = {
            'editname': editname,
            'levtype': levtype,
            'pointstype': pointstype,
            'managecontents': managecontents,
            'expect': expect
        }

        STU_Action(cls.driver).do_edit_leave(editleavedata)

        new_content = cls.driver.find_element_by_xpath(
            '//*[@id="leave-table"]/tbody/tr[1]/td[3]').text
        print(new_content)

        if old_content not in new_content:
            edit_actual = 'edit_pass'
        else:
            edit_actual = 'edit_fail'

        cls.assertEqual(edit_actual, editleavedata['expect'])

    def test_click_delete_leave(self):
        STU_Action(self.driver).click_delete_leave()

        text_content = self.driver.find_element_by_xpath \
            ('//*[@id="leave-table"]/tbody/tr[1]/td[10]').text

        if "已销假" in text_content:
            delete_lev_actual = 'pass'
        else:
            delete_lev_actual = 'fail'
Ejemplo n.º 17
0
 def __init__(self, driver):
     self.driver = driver
     self.ele = Util.get_json(
         '..\\..\\conf\\ResourceAdministration_Conf\\RA_Element.conf')
class DR_Test(unittest.TestCase):
    # 获取查询数据
    query = Util.get_json(
        "..\\..\\conf\\ResourceAdministration_Conf\\RA_Excel.conf")[6]
    query_info = Util.get_excel(query)
    # 获取转交数据
    deliver = Util.get_json(
        "..\\..\\conf\\ResourceAdministration_Conf\\RA_Excel.conf")[7]
    deliver_info = Util.get_excel(deliver)

    @classmethod
    def setUpClass(cls):
        pass

    def setUp(self):
        # 获取绕过登录的信息
        login_ele = Util.get_json(
            "..\\..\\conf\\ResourceAdministration_Conf\\RA_Login.conf")[1]
        self.driver = Service.get_driver()
        Service.open_page(self.driver)
        Service.open_module_connect(self.driver, login_ele)
        self.ele = Util.get_json(
            "..\\..\\conf\\ResourceAdministration_Conf\\RA_Element.conf")

    #转交资源查询测试
    @parameterized.expand(query_info)
    def test_query_DR(self, *query_info):
        msg_xpath = '//*[@id="content"]/div[3]/div/div[1]/div[2]/div[4]/div[1]/span[1]'
        # 执行测试动作
        DR_Action(self.driver).do_query(query_info[:-1])
        # 获取列表信息,并提取总数
        msg = Service.get_hint(self.driver, msg_xpath)
        if len(msg) >= 1:
            actual = "query_pass"
        else:
            actual = "query_fail"
        self.assertEqual(actual, query_info[-1])

    #转交资源转交测试
    @parameterized.expand(deliver_info)
    def test_deliver_DR(self, *deliver_info):
        msg_xpath = '//*[@id="content"]/div[3]/div/div[1]/div[2]/div[4]/div[1]/span[1]'
        Service.click_motion(self.driver, 'xpath',
                             self.ele[8]["DR_query_xpath"])
        old_msg = Service.get_hint(self.driver, msg_xpath)
        DR_Action(self.driver).do_deliver(deliver_info[:-1])
        self.driver.refresh()
        Service.click_motion(self.driver, 'xpath',
                             self.ele[8]["DR_query_xpath"])
        new_msg = Service.get_hint(self.driver, msg_xpath)

        if old_msg != new_msg:
            actual = "deliver_pass"
        else:
            actual = "deliver_fail"
        self.assertEqual(actual, deliver_info[-1])

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

    @classmethod
    def tearDownClass(cls):
        pass