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