From 023702f7d1d00015c1ba63c49e2161c58860efbc Mon Sep 17 00:00:00 2001 From: 阳洁 <2077506045@qq.com> Date: 星期三, 12 七月 2023 16:51:00 +0800 Subject: [PATCH] 测评系统自动测试 --- testcase/test_smoking.py | 168 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 168 insertions(+), 0 deletions(-) diff --git a/testcase/test_smoking.py b/testcase/test_smoking.py new file mode 100644 index 0000000..5c304cf --- /dev/null +++ b/testcase/test_smoking.py @@ -0,0 +1,168 @@ +from datetime import datetime +import multiprocessing +import threading +import time + +import pytest +from selenium import webdriver +from selenium.webdriver.chrome.options import Options +from po.login_page import LoginPage +from po.home_page import HomePage +from po.test_package_list_page import TestPackageListPage +from po.share_add_page import ShareAddPage +from po.answer_page import AnswerPage +from comm.my_random import * +from selenium.common import WebDriverException +from selenium.common.exceptions import ElementClickInterceptedException, TimeoutException +import HTMLTestRunner + + +class TestSmoking: + driver = None + test_package_name = "MAQ鑷姩娴嬭瘯鍖�-20230711151825" + + def test_login(self): + """ + 鎵撳紑椤甸潰骞惰繘琛岀櫥褰曟祴璇� + :return: + """ + TestSmoking.driver = webdriver.Chrome() + driver = TestSmoking.driver + login_page = LoginPage(driver) + driver.get("http://47.114.179.216:8090/login?lang=zh_CN") + driver.maximize_window() + login_page.login("admin", "HyNc#jp0z#N7Y5ih", "ots") + time.sleep(2) + assert login_page.is_login_success() + + def test_create_package(self): + """ + 鍒涘缓娴嬭瘯鍖� + :return: + """ + # 鑾峰彇driver + driver = TestSmoking.driver + # 鍒涘缓home椤甸潰鐨勫璞� + home_page = HomePage(driver) + # 鐐瑰嚮宸︿晶鑿滃崟杩涘叆椤甸潰 + home_page.menu_select("娴嬭瘯鍖呯鐞�/娴嬭瘯鍖呭垪琛�") + + # 鍒涘缓娴嬭瘯鍖呭垪琛ㄩ〉闈㈢殑瀵硅薄 + test_package_list = TestPackageListPage(driver) + # 鐐瑰嚮鍒涘缓鎸夐挳 + test_package_list.create_btn() + # 鑾峰彇褰撳墠鏃堕棿 + current_time = datetime.now() + # 杞崲涓哄瓧绗︿覆 + time_str = current_time.strftime("%Y%m%d%H%M%S") + # 鍒涘缓娴嬭瘯鍖呭~鍐欑殑鍙傛暟 + # 娴嬭瘯鍖呭悕绉� + test_package_name = "MAQ鑷姩娴嬭瘯鍖�-" + time_str + # 璁剧疆娴嬭瘯鍖呭悕绉颁负绫诲彉閲� + TestSmoking.test_package_name = test_package_name + # 鎶ュ憡浼佷笟鍚嶇О + report_company_name = "TAI娴嬭瘯" + # 娴嬭瘯鍖呯被鍨� + test_package_type = "浜烘牸娴嬭瘯鍖�" + # 浜у搧鍖� + prod_name = "MAQV2" + # HR閭 + hr_email = "2077506045@qq.com" + # 鏈夋晥鏈� + invalid_time = "2024-01-01 00:00:00" + # 娴嬭瘯鑰呴個璇烽偖浠惰瑷�绫诲瀷 + test_email_lang_type = "涓枃" + # hr鎶ュ憡閭欢璇█绫诲瀷 + hr_report_email_lang_type = "涓枃" + # 鎶ュ憡妯℃澘 + report_template = "MAQV2-Complete-Chinese" + # 娴嬭瘯鑰呮姤鍛婇偖浠惰瑷�绫诲瀷 + member_report_email_lang_type = "涓枃" + + # 濉啓娴嬭瘯鍖呭悕绉� + test_package_list.testPackageName_input(test_package_name) + # 濉啓鎶ュ憡浼佷笟鍚嶇О + test_package_list.reportCompanyName_input(report_company_name) + # 閫夋嫨娴嬭瘯鍖呯被鍨� + test_package_list.testPackageType_select(test_package_type) + # 閫夋嫨浜у搧鍖� + test_package_list.prodTree_select(prod_name) + # 杈撳叆hr閭 + test_package_list.hrReportEmail_input(hr_email) + # 杈撳叆鏈夋晥鏈� + test_package_list.invalidTime_input(invalid_time) + # 閫夋嫨閭�璇烽偖浠惰瑷�绫诲瀷 + test_package_list.testTemplateLangType_select(test_email_lang_type) + # 閫夋嫨HR閭欢璇█绫诲瀷 + test_package_list.hrTemplateLangType_select(hr_report_email_lang_type) + # 閫夋嫨鎶ュ憡妯℃澘 + test_package_list.reportTemplate_select(report_template) + # 鐐瑰嚮娴嬭瘯鑰呮帴鏀舵姤鍛� + test_package_list.autoSendReport_checkbox() + # 閫夋嫨娴嬭瘯鑰呮姤鍛婇偖绠辫瑷�绫诲瀷 + test_package_list.memberReportLangType_select(member_report_email_lang_type) + # 鐐瑰嚮纭鎸夐挳 + test_package_list.add_confirm() + time.sleep(2) + # 鍒ゆ柇鏄惁鎴愬姛鍒涘缓 + assert test_package_list.is_create_success(test_package_name) + + def test_open_url(self): + """ + 鎵撳紑鍒嗕韩閾炬帴 + :return: + """ + # 鑾峰彇driver + driver = TestSmoking.driver + # 鍒涘缓home椤甸潰鐨勫璞� + # home_page = HomePage(driver) + # 鐐瑰嚮宸︿晶鑿滃崟杩涘叆椤甸潰 + # home_page.menu_select("娴嬭瘯鍖呯鐞�/娴嬭瘯鍖呭垪琛�") + # 鍒涘缓娴嬭瘯鍖呭垪琛ㄩ〉闈㈢殑瀵硅薄 + test_package_list = TestPackageListPage(driver) + # 鍕鹃�夋柊鍒涘缓鐨勬祴璇曞寘 + test_package_list.click_package_checkbox(TestSmoking.test_package_name) + # 鐐瑰嚮鐢熸垚鍒嗕韩閾炬帴鎸夐挳 + test_package_list.click_share_1_btn() + # 鑾峰彇鍒皍rl + url = test_package_list.get_share_url() + # 鎵撳紑鏂版爣绛鹃〉鍔犺浇url + test_package_list.open_new_table_to_url(url) + # 鍒涘缓鍒嗕韩椤甸潰瀵硅薄 + share_add = ShareAddPage(driver) + # 濉啓淇℃伅鎻愪氦骞惰幏鍙栨祴璇曢摼鎺� + name = random_string(8) + email = name + "@gmail.com" + test_url = share_add.page_default_operation(name, email) + # test_url = "http://161.117.57.194/exam-stu/#/ots/94830ada-8f6c-44c0-8946-79c43267d9c1/login" + # 褰撳墠椤甸潰鎵撳紑閾炬帴 + driver.get(test_url) + # 鐐瑰嚮鎻愪氦鎸夐挳 + share_add.submit_btn() + # 濉啓鍩烘湰淇℃伅骞舵彁浜� + share_add.fill_info(email, "鑱屽憳", "浜轰簨閮�") + # 鐐瑰嚮寮�濮嬫祴璇� + share_add.submit_btn() + + def test_answer(self): + # 鑾峰彇driver + driver = TestSmoking.driver + # 鍒涘缓answer瀵硅薄 + answer_page = AnswerPage(driver) + # 寮�濮嬬瓟棰� + answer_page.answer_MAQ() + # 绛斿畬棰樺叧闂綋鍓嶆爣绛鹃〉 + driver.close() + # 鍒囨崲鍒扮涓�涓爣绛鹃〉 + answer_page.switch_window(0) + # 鍒涘缓娴嬭瘯鍖呭垪琛ㄩ〉闈㈢殑瀵硅薄 + test_package_list = TestPackageListPage(driver) + # 鍒犻櫎娴嬭瘯鍖� + test_package_list.delete_package() + time.sleep(5) + # 鍏抽棴 + driver.quit() + + +if __name__ == '__main__': + pytest.main(["-s", __file__]) -- Gitblit v1.9.1