From 70e15e9cc6d9e789084d74f6b1e963631585ee6e Mon Sep 17 00:00:00 2001 From: 阳洁 <2077506045@qq.com> Date: 星期五, 14 七月 2023 17:56:30 +0800 Subject: [PATCH] 测评系统自动测试 --- elements/test_package_list_elements.py | 6 +++ testcase/test_jaq.py | 54 ++++++++++++++++++--------- main.py | 2 po/test_package_list_page.py | 25 ++++++++++++ testcase/test_maq.py | 33 ++++++++-------- 5 files changed, 85 insertions(+), 35 deletions(-) diff --git a/elements/test_package_list_elements.py b/elements/test_package_list_elements.py index 7d54cf8..09fd4ea 100644 --- a/elements/test_package_list_elements.py +++ b/elements/test_package_list_elements.py @@ -53,6 +53,12 @@ add_hrTemplateLangType_option = (By.XPATH, "//select[@name='hrTemplateLangType']/../div/div/ul/li/a/span[2]") # add-鎶ュ憡妯℃澘 add_reportTemplateId_select = (By.XPATH, "//select[@name='reportTemplateId']/../button") + # add-瑕佽瘎浠风殑宀椾綅 + add_position_input = (By.XPATH, "//input[@name='position']") + # add-鑱屼笟澶х被 + add_professionalCategory_input = (By.XPATH, "//input[@name='professionalCategory']") + # add-涓婄骇宀椾綅 + add_superiorPosition_input = (By.XPATH, "//input[@name='superiorPosition']") # add-鎶ュ憡妯℃澘閫夐」 add_reportTemplateId_option = (By.XPATH, "//select[@name='reportTemplateId']/../div/div/ul/li/a/span[2]") # add-娴嬭瘯鑰呮帴鏀舵姤鍛� diff --git a/main.py b/main.py index 4647a64..2f7595e 100644 --- a/main.py +++ b/main.py @@ -5,7 +5,7 @@ def run_testcases(): - pytest.main(['-vs', '--html=report/report.html', 'testcase/test_smoking.py']) + pytest.main(['-vs', '--html=report/report.html', 'testcase/test_*.py']) if __name__ == '__main__': diff --git a/po/test_package_list_page.py b/po/test_package_list_page.py index 0ee54db..35d1e8e 100644 --- a/po/test_package_list_page.py +++ b/po/test_package_list_page.py @@ -172,6 +172,30 @@ # 鍐嶆鐐瑰嚮涓嬫媺妗� self.click(PackageList.add_reportTemplateId_select) + def position_input(self, text): + """ + 杈撳叆瑕佽瘎浠风殑宀椾綅 + :param text: + :return: + """ + self.send_text(text, PackageList.add_position_input) + + def professionalCategory_input(self, text): + """ + 杈撳叆鑱屼笟澶х被 + :param text: + :return: + """ + self.send_text(text, PackageList.add_professionalCategory_input) + + def superiorPosition_input(self, text): + """ + 杈撳叆涓婄骇宀椾綅 + :param text: + :return: + """ + self.send_text(text, PackageList.add_superiorPosition_input) + def autoSendReport_checkbox(self): """ 鐐瑰嚮娴嬭瘯鑰呮帴鏀舵姤鍛� @@ -260,6 +284,7 @@ url = self.get_input_value_js(PackageList.share_url_input) # 閫�鍥炰笂涓�灞俰frame self.switch_parent_iframe() + time.sleep(1) # 鐐瑰嚮鍏抽棴鎸夐挳 self.click(PackageList.share_cancel_btn) return url diff --git a/testcase/test_smoking.py b/testcase/test_jaq.py similarity index 80% copy from testcase/test_smoking.py copy to testcase/test_jaq.py index 0dbec07..4d2701a 100644 --- a/testcase/test_smoking.py +++ b/testcase/test_jaq.py @@ -12,7 +12,7 @@ from comm.my_random import * -class TestSmoking: +class TestJAQ: driver = None test_package_name = "MAQ鑷姩娴嬭瘯鍖�-20230711151825" @@ -22,8 +22,8 @@ 鎵撳紑椤甸潰骞惰繘琛岀櫥褰曟祴璇� :return: """ - TestSmoking.driver = webdriver.Chrome() - driver = TestSmoking.driver + TestJAQ.driver = webdriver.Chrome() + driver = TestJAQ.driver login_page = LoginPage(driver) try: # 鎵撳紑閾炬帴 @@ -43,8 +43,14 @@ reload_btn.click() time.sleep(10) except: - # 鍑虹幇寮傚父琛ㄧず涓嶅瓨鍦ㄥ埛鏂版寜閽�,閫�鍑哄惊鐜� - break + # 鍑虹幇寮傚父琛ㄧず涓嶅瓨鍦ㄥ埛鏂版寜閽� + # 鎺ョ潃鍒ゆ柇鏄惁瀛樺湪nginx error! + try: + nginx_error = login_page.get_element((By.XPATH, "//strong[text() = 'nginx error!']")) + # 瀛樺湪鍒欑潯鐪�10绉� + time.sleep(10) + except: + break login_page.login("admin", "ots@2021!!", "ots") time.sleep(2) @@ -56,7 +62,7 @@ :return: """ # 鑾峰彇driver - driver = TestSmoking.driver + driver = TestJAQ.driver # 鍒涘缓home椤甸潰鐨勫璞� home_page = HomePage(driver) # 鐐瑰嚮宸︿晶鑿滃崟杩涘叆椤甸潰 @@ -72,15 +78,15 @@ time_str = current_time.strftime("%Y%m%d%H%M%S") # 鍒涘缓娴嬭瘯鍖呭~鍐欑殑鍙傛暟 # 娴嬭瘯鍖呭悕绉� - test_package_name = "MAQ鑷姩娴嬭瘯鍖�-" + time_str + test_package_name = "JAQ鑷姩娴嬭瘯鍖�-" + time_str # 璁剧疆娴嬭瘯鍖呭悕绉颁负绫诲彉閲� - TestSmoking.test_package_name = test_package_name + TestJAQ.test_package_name = test_package_name # 鎶ュ憡浼佷笟鍚嶇О report_company_name = "TAI娴嬭瘯" # 娴嬭瘯鍖呯被鍨� - test_package_type = "浜烘牸娴嬭瘯鍖�" + test_package_type = "宸ヤ綔鍒嗘瀽鍖�" # 浜у搧鍖� - prod_name = "MAQV2" + prod_name = "JAQ" # HR閭 hr_email = "2077506045@qq.com" # 鏈夋晥鏈� @@ -90,7 +96,13 @@ # hr鎶ュ憡閭欢璇█绫诲瀷 hr_report_email_lang_type = "涓枃" # 鎶ュ憡妯℃澘 - report_template = "MAQV2-Complete-Chinese" + report_template = "JAQ-Complete-Chinese" + # 瑕佽瘎浠风殑宀椾綅 + position = "涓荤" + # 鑱屼笟澶х被 + professional_category = "绠$悊" + # 涓婄骇宀椾綅 + superior_position = "鎬荤粡鐞�" # 娴嬭瘯鑰呮姤鍛婇偖浠惰瑷�绫诲瀷 member_report_email_lang_type = "涓枃" @@ -112,6 +124,12 @@ test_package_list.hrTemplateLangType_select(hr_report_email_lang_type) # 閫夋嫨鎶ュ憡妯℃澘 test_package_list.reportTemplate_select(report_template) + # 杈撳叆瑕佽瘎浠风殑宀椾綅 + test_package_list.position_input(position) + # 杈撳叆鑱屼笟澶х被 + test_package_list.professionalCategory_input(professional_category) + # 杈撳叆涓婄骇宀椾綅 + test_package_list.superiorPosition_input(superior_position) # 鐐瑰嚮娴嬭瘯鑰呮帴鏀舵姤鍛� test_package_list.autoSendReport_checkbox() # 閫夋嫨娴嬭瘯鑰呮姤鍛婇偖绠辫瑷�绫诲瀷 @@ -128,15 +146,11 @@ :return: """ # 鑾峰彇driver - driver = TestSmoking.driver - # 鍒涘缓home椤甸潰鐨勫璞� - # home_page = HomePage(driver) - # 鐐瑰嚮宸︿晶鑿滃崟杩涘叆椤甸潰 - # home_page.menu_select("娴嬭瘯鍖呯鐞�/娴嬭瘯鍖呭垪琛�") + driver = TestJAQ.driver # 鍒涘缓娴嬭瘯鍖呭垪琛ㄩ〉闈㈢殑瀵硅薄 test_package_list = TestPackageListPage(driver) # 鍕鹃�夋柊鍒涘缓鐨勬祴璇曞寘 - test_package_list.click_package_checkbox(TestSmoking.test_package_name) + test_package_list.click_package_checkbox(TestJAQ.test_package_name) # 鐐瑰嚮鐢熸垚鍒嗕韩閾炬帴鎸夐挳 test_package_list.click_share_1_btn() # 鑾峰彇鍒皍rl @@ -161,7 +175,7 @@ def test_answer(self): # 鑾峰彇driver - driver = TestSmoking.driver + driver = TestJAQ.driver # 鍒涘缓answer瀵硅薄 answer_page = AnswerPage(driver) # 寮�濮嬬瓟棰� @@ -173,6 +187,10 @@ driver.close() # 鍒囨崲鍒扮涓�涓爣绛鹃〉 answer_page.switch_window(0) + + def test_delete_package(self): + # 鑾峰彇driver + driver = TestJAQ.driver # 鍒涘缓娴嬭瘯鍖呭垪琛ㄩ〉闈㈢殑瀵硅薄 test_package_list = TestPackageListPage(driver) # 鍒犻櫎娴嬭瘯鍖� diff --git a/testcase/test_smoking.py b/testcase/test_maq.py similarity index 90% rename from testcase/test_smoking.py rename to testcase/test_maq.py index 0dbec07..d3933b3 100644 --- a/testcase/test_smoking.py +++ b/testcase/test_maq.py @@ -12,7 +12,7 @@ from comm.my_random import * -class TestSmoking: +class TestMAQ: driver = None test_package_name = "MAQ鑷姩娴嬭瘯鍖�-20230711151825" @@ -22,8 +22,8 @@ 鎵撳紑椤甸潰骞惰繘琛岀櫥褰曟祴璇� :return: """ - TestSmoking.driver = webdriver.Chrome() - driver = TestSmoking.driver + TestMAQ.driver = webdriver.Chrome() + driver = TestMAQ.driver login_page = LoginPage(driver) try: # 鎵撳紑閾炬帴 @@ -56,7 +56,7 @@ :return: """ # 鑾峰彇driver - driver = TestSmoking.driver + driver = TestMAQ.driver # 鍒涘缓home椤甸潰鐨勫璞� home_page = HomePage(driver) # 鐐瑰嚮宸︿晶鑿滃崟杩涘叆椤甸潰 @@ -74,7 +74,7 @@ # 娴嬭瘯鍖呭悕绉� test_package_name = "MAQ鑷姩娴嬭瘯鍖�-" + time_str # 璁剧疆娴嬭瘯鍖呭悕绉颁负绫诲彉閲� - TestSmoking.test_package_name = test_package_name + TestMAQ.test_package_name = test_package_name # 鎶ュ憡浼佷笟鍚嶇О report_company_name = "TAI娴嬭瘯" # 娴嬭瘯鍖呯被鍨� @@ -128,15 +128,11 @@ :return: """ # 鑾峰彇driver - driver = TestSmoking.driver - # 鍒涘缓home椤甸潰鐨勫璞� - # home_page = HomePage(driver) - # 鐐瑰嚮宸︿晶鑿滃崟杩涘叆椤甸潰 - # home_page.menu_select("娴嬭瘯鍖呯鐞�/娴嬭瘯鍖呭垪琛�") + driver = TestMAQ.driver # 鍒涘缓娴嬭瘯鍖呭垪琛ㄩ〉闈㈢殑瀵硅薄 test_package_list = TestPackageListPage(driver) # 鍕鹃�夋柊鍒涘缓鐨勬祴璇曞寘 - test_package_list.click_package_checkbox(TestSmoking.test_package_name) + test_package_list.click_package_checkbox(TestMAQ.test_package_name) # 鐐瑰嚮鐢熸垚鍒嗕韩閾炬帴鎸夐挳 test_package_list.click_share_1_btn() # 鑾峰彇鍒皍rl @@ -161,18 +157,22 @@ def test_answer(self): # 鑾峰彇driver - driver = TestSmoking.driver + driver = TestMAQ.driver # 鍒涘缓answer瀵硅薄 answer_page = AnswerPage(driver) # 寮�濮嬬瓟棰� - # flag = answer_page.answer_MAQ() - # if not flag: - # assert flag - # return + flag = answer_page.answer_MAQ() + if flag is None or not flag: + assert flag + return # 绛斿畬棰樺叧闂綋鍓嶆爣绛鹃〉 driver.close() # 鍒囨崲鍒扮涓�涓爣绛鹃〉 answer_page.switch_window(0) + + def test_delete_package(self): + # 鑾峰彇driver + driver = TestMAQ.driver # 鍒涘缓娴嬭瘯鍖呭垪琛ㄩ〉闈㈢殑瀵硅薄 test_package_list = TestPackageListPage(driver) # 鍒犻櫎娴嬭瘯鍖� @@ -182,5 +182,6 @@ driver.quit() + if __name__ == '__main__': pytest.main(["-s", __file__]) -- Gitblit v1.9.1