From 8c9395d6a0e07ea64a7ed88a466c5befb83178e3 Mon Sep 17 00:00:00 2001
From: 阳洁 <2077506045@qq.com>
Date: 星期五, 28 七月 2023 18:42:59 +0800
Subject: [PATCH] 测评系统自动测试

---
 testcase/test_3export_test_data.py |  124 +++++++++++++++++++++++++++++++++++++++++
 1 files changed, 124 insertions(+), 0 deletions(-)

diff --git a/testcase/test_3export_test_data.py b/testcase/test_3export_test_data.py
new file mode 100644
index 0000000..ad11842
--- /dev/null
+++ b/testcase/test_3export_test_data.py
@@ -0,0 +1,124 @@
+import os
+from datetime import datetime
+import time
+from selenium.webdriver.common.by import By
+from selenium.common.exceptions import TimeoutException
+from selenium.common.exceptions import NoSuchElementException
+
+import pytest
+from comm.comm import *
+from comm.read_data import *
+from comm.write_data import *
+from selenium import webdriver
+from po.login_page import LoginPage
+from po.home_page import HomePage
+from po.export_test_data_page import ExportTestDataPage
+from po.member_detail_page import MemberDetailPage
+from po.report_page import ReportPage
+from po.share_add_page import ShareAddPage
+from po.maq_answer_page import MAQAnswerPage
+from po.caq_answer_page import CAQAnswerPage
+from comm.my_random import *
+
+
+class TestPackageList:
+    driver = None
+    test_package_name = "MAQV2鑷姩娴嬭瘯鍖�-20230727155906"
+    member_email = None
+
+    @pytest.mark.parametrize('data_read', ["testPackageList"], indirect=True)
+    def test_export_test_data(self, data_read: dict, driver):
+        home = HomePage(driver)
+        home.menu_select("娴嬭瘯鍖呯鐞�/瀵煎嚭娴嬭瘯鏁版嵁")
+        time.sleep(5)
+        export = ExportTestDataPage(driver)
+        # 閫夋嫨浜у搧鍖�
+        export.select(export.es.product_select, export.es.product_option, data_read["edit"]["product"])
+
+        # 鑾峰彇褰撳墠鏃ユ湡
+        now = datetime.now()
+        # 鎻愬彇骞淬�佹湀銆佹棩
+        year = now.year
+        month = now.month
+        if month < 10:
+            month = "0" + str(month)
+        day = now.day
+        if day < 10:
+            day = "0" + str(day)
+        # 鎷兼帴鏃ユ湡
+        date = f"{year}-{month}-{day}"
+        # 杈撳叆瀹屾垚鏃堕棿
+        export.fill(export.es.test_begin_time_input, date)
+        export.fill(export.es.test_end_time_input, date)
+        # 鐐瑰嚮鎼滅储鎸夐挳
+        export.click(export.es.search_btn)
+        time.sleep(5)
+
+        # 鑾峰彇褰撳墠椤圭洰鏍硅矾寰�
+        root_path = os.getcwd()
+        # 鎷兼帴涓嬭浇鏂囦欢鐩綍
+        dir_path = root_path + r"\download"
+        # 鑾峰彇鐩綍涓嬫墍鏈夋枃浠�
+        old_file_names = listdir(dir_path)
+
+        # 鍕鹃��
+        export.click(export.es.table_thead_checkbox)
+        # 鐐瑰嚮瀵煎嚭
+        export.click(export.es.export_test_data_btn)
+
+        # 绛夊緟鍔犺浇妗嗘秷澶�
+        export.wait_layer_reload_hide()
+
+        new_file_names = []
+
+        i = 0
+        while i < data_read["downloadWaitTime"]:
+            # 鑾峰彇鐩綍涓嬫墍鏈夋枃浠�
+            new_file_names = listdir(dir_path)
+            # 鍒ゆ柇鏃ф枃浠剁殑鏁伴噺涓庢柊鏂囦欢鐨勬暟閲忔槸鍚︾浉鍚岋紝鐩稿悓鍒欑潯鐪犱竴绉�
+            if len(old_file_names) == len(new_file_names):
+                time.sleep(1)
+                i += 1
+                continue
+            else:
+                # 鍒ゆ柇鏂扮殑鏂囦欢鍚嶆槸鍚﹀寘鍚湭纭
+                for file_name in new_file_names:
+                    if "鏈‘璁�" in file_name:
+                        new_file_names = listdir(dir_path)
+                        break
+                else:
+                    # 鍚﹀垯鐩存帴閫�鍑哄惊鐜�
+                    break
+        else:
+            assert False
+
+        # 鑾峰彇涓や釜鍒楄〃涓殑宸泦
+        result = set(old_file_names).symmetric_difference(set(new_file_names))
+        result_list = list(result)
+        file_name = dir_path + "\\" + result_list[0]
+        # 璇诲彇鏂囦欢鏁版嵁
+        data_list = read_excel(file_name, "Sheet1")
+        # 瀵煎嚭鐨勬暟鎹�
+        excel_data = data_list[3]
+        # 绛旈鐨勬暟鎹�
+        answer_data: dict = data_read["question"]["MAQ"]
+        # 瀵规瘮鏁版嵁
+        for key in answer_data.keys():
+            if excel_data[key] != answer_data[key]["answer"]:
+                print(key + "鏁版嵁閿欒")
+                assert False
+        assert True
+
+
+if __name__ == '__main__':
+    pytest.main(["-s", __file__])
+
+
+
+
+
+
+
+
+
+

--
Gitblit v1.9.1