提交 91f02204 authored 作者: 陈泽健's avatar 陈泽健

处理展厅巡检预定系统创建会议因议题文件上传的路径错误导致的异常问题,优化app_init和app_quit的代码,补充adb路径配置,增加对应异常的日志打印。

上级 e88a9b54
/预定系统/reports/
/预定系统/log/
/日志监测/error_log/
/预定配套件/中控门口屏/reports/
/预定配套件/中控门口屏/log/
\ No newline at end of file
......@@ -751,57 +751,196 @@ def command_centre_control(rtsp_url, app_drive, wd):
# app设备初始化adb连接函数
import subprocess
from venv import logger
def app_init(device_ip, port=5555):
"""
初始化浏览器设置和实例。
此函数旨在初始化程序与app设备之间的adb连接,判断adb连接状态是否可控
def app_init(device_ip, port=5555, adb_path=r"C:\Program Files\androidsdk\androidsdk\platform-tools\adb.exe"):
"""
# 标记初始化过程的开始
INFO("'----------' 正在初始化ADB连接 '----------'")
初始化 ADB 连接并检查设备状态
参数:
- device_ip: 设备 IP 地址
- port: ADB 端口号,默认 5555
- adb_path: ADB 工具的可执行文件完整路径(可选)
例如: r"C:\platform-tools\adb.exe"
如果不提供,则默认使用系统PATH中的adb
返回:
- True: 连接成功且设备可用
- False: 连接失败或设备不可用
"""
通过 ADB 连接设备并检查设备状态
:param device_ip: 设备的 IP 地址
:param port: 端口号,默认为 5555
"""
# 标记初始化过程
INFO("---------- ADB 连接初始化开始 ----------")
INFO(f"目标设备: {device_ip}:{port}")
INFO(f"使用ADB路径: {adb_path if adb_path else '系统PATH'}")
try:
# 构建设备地址
device_address = f"{device_ip}:{port}"
# 连接设备
subprocess.run(['adb', 'connect', device_address], check=True)
INFO(f"尝试连接到设备: {device_address}")
# 检查设备状态
result = subprocess.run(['adb', 'devices'], capture_output=True, text=True, check=True)
devices = result.stdout.strip().split('\n')[1:] # 去掉标题行
# 确定adb命令
adb_cmd = [adb_path] if adb_path else ['adb']
# 1. 验证ADB可用性
try:
version_result = subprocess.run(
[*adb_cmd, '--version'],
capture_output=True,
text=True,
check=True
)
logging.debug(f"ADB版本信息:\n{version_result.stdout}")
except Exception as e:
logging.error(f"ADB验证失败,请检查路径是否正确: {e}")
if not adb_path:
logging.error("建议:请通过adb_path参数指定完整的adb.exe路径")
return False
# 2. 尝试连接设备
INFO(f"尝试 ADB 连接到设备: {device_address}")
connect_result = subprocess.run(
[*adb_cmd, 'connect', device_address],
capture_output=True,
text=True,
check=False # 改为不抛出异常,手动处理
)
INFO(f"ADB连接命令返回码: {connect_result.returncode}")
INFO(f"ADB连接命令输出: {connect_result.stdout.strip()}")
if connect_result.stderr.strip():
logging.warning(f"ADB连接错误输出: {connect_result.stderr.strip()}")
# 3. 检查设备状态
INFO("获取设备列表验证连接状态...")
devices_result = subprocess.run(
[*adb_cmd, 'devices'],
capture_output=True,
text=True,
check=True
)
logging.debug(f"完整 adb devices 输出:\n{devices_result.stdout}")
# 解析设备列表
devices = devices_result.stdout.strip().split('\n')[1:] # 去掉标题行
INFO(f"找到 {len(devices)} 个设备")
for device in devices:
ip, status = device.split()
if ip == device_address and status == 'device':
INFO(f"设备 {device_address} 已连接并可用")
return True
elif ip == device_address and status == 'offline':
INFO(f"设备 {device_address} 处于 offline 状态,当前设备不可控制,请检查设备网络状态")
return False
elif ip == device_address and status == 'unauthorized':
logger.error(f"设备 {device_address} 未授权调试")
return False
INFO(f"设备 {device_address} 未找到,请检查设备IP是否正确!")
if not device.strip():
continue
try:
parts = device.split()
if len(parts) >= 2: # 处理可能存在的额外列
ip, status = parts[0], parts[1]
else:
logging.warning(f"设备信息格式异常: {device}")
continue
INFO(f"检测到设备: IP={ip}, 状态={status}")
if ip == device_address:
if status == 'device':
INFO(f"设备 {device_address} 已连接并可用")
return True
elif status == 'offline':
logging.warning(f"设备 {device_address} 处于离线状态,请检查:")
logging.warning("1. 设备网络连接")
logging.warning("2. 设备是否开启ADB调试")
logging.warning("3. 防火墙是否阻止了5555端口")
return False
elif status == 'unauthorized':
logging.error(f"设备 {device_address} 未授权调试:")
logging.error("请在设备上检查并允许USB调试授权提示")
return False
else:
logging.warning(f"设备 {device_address} 处于未知状态: {status}")
return False
except Exception as e:
logging.warning(f"设备信息解析失败: {device}, 错误: {e}")
# 未找到目标设备
logging.error(f"设备 {device_address} 未在设备列表中找到,可能原因:")
logging.error("1. 设备IP地址不正确")
logging.error("2. 设备未开启网络ADB调试")
logging.error("3. 设备未与测试机在同一网络")
logging.error("4. 防火墙阻止了连接")
return False
except subprocess.CalledProcessError as e:
INFO(f"连接设备失败: {e}")
logging.error(f"ADB命令执行失败:")
logging.error(f"命令: {' '.join(e.cmd)}")
logging.error(f"返回码: {e.returncode}")
logging.error(f"错误输出: {e.stderr.strip()}")
return False
except Exception as e:
logging.error(f"发生未知错误: {str(e)}", exc_info=True)
return False
# if __name__ == '__main__':
# # 使用示例:
# device_ip = '192.168.5.156'
#
# # 方式1:使用系统PATH中的adb
# # app_init(device_ip)
#
# # 方式2:指定adb路径
# app_init(
# device_ip,
# )
# app设备退出adb连接函数
def app_quit(device_ip,port=5555):
def app_quit(device_ip, port=5555, adb_path=r"C:\Program Files\androidsdk\androidsdk\platform-tools\adb.exe"):
"""
退出浏览器并释放资源。
断开 ADB 连接并释放资源
该函数从全局存储中获取设备adb连接状态
参数:
- device_ip: 设备 IP 地址
- port: ADB 端口号,默认 5555
- adb_path: ADB 工具的可执行文件完整路径(可选)
例如: r"C:\platform-tools\adb.exe"
如果不提供,则默认使用系统PATH中的adb
"""
# 断开特定 IP 和端口的 ADB 连接
device_address = f"{device_ip}:{port}"
subprocess.run(['adb', 'disconnect', device_address])
INFO(f"ADB 连接已断开: {device_address}")
try:
# 标记断开过程
INFO("---------- ADB 连接断开开始 ----------")
INFO(f"目标设备: {device_ip}:{port}")
INFO(f"使用ADB路径: {adb_path if adb_path else '系统PATH'}")
# 构建设备地址
device_address = f"{device_ip}:{port}"
# 确定adb命令
adb_cmd = [adb_path] if adb_path else ['adb']
# 尝试断开连接
INFO(f"尝试断开 ADB 连接: {device_address}")
disconnect_result = subprocess.run(
[*adb_cmd, 'disconnect', device_address],
capture_output=True,
text=True,
check=False # 避免因断开失败而抛出异常
)
INFO(f"ADB断开命令返回码: {disconnect_result.returncode}")
INFO(f"ADB断开命令输出: {disconnect_result.stdout.strip()}")
if disconnect_result.stderr.strip():
WARN(f"ADB断开错误输出: {disconnect_result.stderr.strip()}")
# 验证是否断开成功
if "disconnected" in disconnect_result.stdout:
INFO(f"ADB 连接已成功断开: {device_address}")
return True
else:
WARN(f"ADB 连接断开失败: {device_address}")
return False
except Exception as e:
ERROR(f"断开ADB连接时发生错误: {str(e)}", exc_info=True)
return False
# app截屏函数
def get_screenshot_with_retry(wd,app_drive, module_name, function_name, step_name, max_retries=3, retry_delay=5):
......
......@@ -78,9 +78,9 @@ def browser_init(login_type):
# 拯救者电脑
# service = Service(r'C:\Users\29194\AppData\Local\Programs\Python\Python310\Scripts\chromedriver.exe')
# EDY电脑
# service = Service(r'C:\Program Files\Python310\Scripts\chromedriver.exe')
service = Service(r'C:\Users\EDY\AppData\Local\Programs\Python\Python310\Scripts\chromedriver.exe')
# 云电脑
service = Service(r'E:\Python\Scripts\chromedriver.exe')
# service = Service(r'E:\Python\Scripts\chromedriver.exe')
# 尝试创建WebDriver实例并执行初始化操作
try:
# 创建WebDriver实例
......@@ -276,11 +276,8 @@ def issue_send_and_upload(wd, issue_num, issue_name):
# 议题文件的路径列表
issue_file_path = [
r"D:\GithubData\自动化\ubains-module-test\预定系统\reports\issue_file\5.164Scan 安全报告.pdf",
r"D:\GithubData\自动化\ubains-module-test\预定系统\reports\issue_file\IdeaTop软件配置&操作说明文档.docx",
r"D:\GithubData\自动化\ubains-module-test\预定系统\reports\issue_file\ideaTop部署配置视频.mp4",
r"D:\GithubData\自动化\ubains-module-test\预定系统\reports\issue_file\IdeaTop软件配置&操作说明文档.docx",
r"D:\GithubData\自动化\ubains-module-test\预定系统\reports\issue_file\议题图片.png"
r"C:\PycharmData\ubains-module-test\预定系统\reports\issue_file\5.164Scan 安全报告.pdf",
r"C:\PycharmData\ubains-module-test\预定系统\reports\issue_file\议题图片.png"
]
# 打印并输入议题名称
......@@ -309,9 +306,10 @@ def issue_send_and_upload(wd, issue_num, issue_name):
sleep(15)
# 截取上传完成后的屏幕日志
SELENIUM_LOG_SCREEN(wd, "50%", "Exhibit_Inspect", "Meeting_Message", "添加议题文件")
sleep(60)
SELENIUM_LOG_SCREEN(wd, "75%", "Exhibit_Inspect", "Meeting_Message", "添加议题文件")
sleep(20)
# 点击【确定】按钮完成上传
logging.info("点击【确定】按钮完成上传")
safe_click((By.XPATH,"//div[@aria-label='会议文件上传']//div[@class='el-dialog__footer']//div//span[contains(text(),'确定')]"),wd)
sleep(2)
......
......@@ -313,4 +313,5 @@
90. 2025-06-05:
- 兰州中石化项目输出角色权限组的部分JSON数据,调试自动化运行。排查展厅自动化失败问题,处理chrome版本升级后,chromedriver版本没对上问题。
91. 2025-06-10:
- 兰州中石化项目输出议题申报流程的JSON数据,调试自动化运行。补充代办事宜模块流程的JSON数据自动化测试。
\ No newline at end of file
- 兰州中石化项目输出议题申报流程的JSON数据,调试自动化运行。补充代办事宜模块流程的JSON数据自动化测试。
- 处理展厅巡检预定系统创建会议因议题文件上传的路径错误导致的异常问题,优化app_init和app_quit的代码,补充adb路径配置,增加对应异常的日志打印。
\ No newline at end of file
......@@ -88,7 +88,7 @@ class Exhibition_hall_inspection:
# 调用函数添加议题
INFO("添加议题文件")
issue_send_and_upload(wd, 5, issue_name)
issue_send_and_upload(wd, 2, issue_name)
sleep(2)
# 选择签到时间
......
......@@ -2,11 +2,11 @@ from 预定系统.Base.app_base import *
import logging
import time
class same_screen_share_000x:
class SameScreenShare:
"""
执行指令:
1.cd 预定系统
2.hytest --report_title 无纸化同屏测试报告 --report_url_prefix http://nat.ubainsyun.com:31133 --tag 无纸化同屏
2.hytest --report_title 无纸化2.0同屏测试报告 --report_url_prefix http://nat.ubainsyun.com:31133 --tag 无纸化2.0同屏
"""
tags = ['无纸化2.0同屏', '展厅巡检', '无纸化2.0测试']
......
<!DOCTYPE html>
<html>
<head>
<title>兰州中石化项目议题申报测试报告</title>
<meta charset="UTF-8">
<style>body {
font-family: consolas, Verdana, sans-serif;
font-size: 1.2em;
color: #696e71;
display: grid;
grid-template-columns: 1fr 5rem;
}
.main_section {
width: 90%;
margin: 0 auto;
}
#float_menu{
position:fixed;
top:0;
right:0;
text-align: center;
}
#float_menu .menu-item {
cursor: pointer;
padding: .5em;
margin: .5em 0;
color: #c08580;
background-color: #f8f0ef;
font-size: 1.2em;
}
.result{
display: flex;
}
.result_table{
border-collapse: collapse;
border: 1px solid #f0e0e5;
width: 30em;
text-align: center;
font-size: 1.0em;
}
.result_table td{
border: 1px solid #f0e0e5;
padding: .3em;
}
.result_barchart{
width: 30em;
margin: 0 5em 0 5em;
}
.barchar_item{
margin: 2.5rem 0;
}
.barchart_barbox {
margin: 0.5em 0;
width: 100%;
background-color: #fff;
border: 1px solid #86c2dd;
border-radius: .2em;
}
.barchart_bar {
text-align: right;
height: 1.2rem;
}
.h3_button {
margin: 1.5em;
cursor: pointer;
color: #03a9f4;
}
.info
{
white-space:pre-wrap;
margin: .8em 1.5em;
}
.error-info
{
color: #a64747
}
.suite_dir {
margin: 1em .2em;
padding: .3em;
/* background-color: #dfeff6; */
border: 1px solid #bcd8e4;
}
.suite_file {
margin: 1em .2em;
padding: .3em;
border: 1px solid #bcd8e4;
}
.case {
margin: 1em .2em;
/* padding: .3em; */
border: 1px solid #e7d4d4;
}
.case_class_path{
margin: 0em 1em;
}
.folder_header {
padding: .2em .7em;
background-color: #fffaf9;
cursor: pointer;
}
.setup{
margin: .2em;
/* padding: .3em; */
/* border: 1px solid #e7d4d4; */
}
.teardown{
margin: .2em;
/* padding: .3em;*/
/* border: 1px solid #e7d4d4; */
}
.test_steps{
margin: .2em;
padding: .3em;
/* border: 1px solid #e7d4d4; */
}
.label {
display: inline-block;
padding: .1em .5em;
font-size: .88em;
letter-spacing: 1px;
white-space: nowrap;
color: #0d6ebc;
border-radius: .2em;
min-width: 5em;
margin-right: 2em;
font-family: consolas;
}
/* .suite_setup .label{
color: #219e26 ;
}
.suite_teardown .label{
color: #219e26;
} */
/* .case.pass .casename{
color: #329132 ;
} */
.case.pass .caselabel{
color: white;
background-color: #3b9e3f;
}
/* .case.fail .casename{
color: #a64747;
} */
.case.fail .caselabel{
color: white;
background-color: #a64747;
}
/* .case.abort .casename{
color: #953ab7;
} */
.case.abort .caselabel{
color: white;
background-color: #9c27b0;
}
.case_step {
margin: .8em;
}
.checkpoint_pass {
margin: .8em;
}
.checkpoint_fail {
margin: .8em;
}
.case_step .tag{
color: #2196f3;;
margin: .3em 1em .3em 0;
padding: .1em .3em;
font-size: .92em;
}
.checkpoint_pass .tag{
color: #009806;
margin:.3em 1em .3em .5em;
padding: .1em .3em;
font-size: .92em;
}
.checkpoint_fail .tag{
color: #9c2020;
margin:.3em 1em .3em .5em;
padding: .1em .3em;
font-size: .92em;
}
.screenshot {
border: 1px solid #86c2dd;
}
.executetime {
float: right;
}
/* 模态框内容 */
.modal-content {
margin: auto;
display: block;
width: 95%;
max-width: 700px;
max-height: 80vh; /* 设置最大高度为视口高度的80% */
object-fit: contain; /* 保持图片的宽高比 */
zoom: 3;
}
/* 模态框 */
.modal {
display: none; /* 隐藏 */
position: fixed; /* 固定位置 */
z-index: 1; /* 坐在顶部 */
padding-top: 40px; /* 在图片上方添加一些内边距 */
left: 0;
top: 0;
width: 100%; /* 宽度 */
height: 100%; /* 高度 */
overflow: auto; /* 启用滚动 */
background-color: rgb(0,0,0); /* 背景颜色 */
background-color: rgba(0,0,0,0.9); /* 黑色背景半透明 */
}
/* 关闭按钮 */
.close {
position: absolute; /* 定义元素的定位方式为绝对定位 */
top: 10px; /* 距离最近的已定位祖先元素顶部15像素 */
right: 30px; /* 距离最近的已定位祖先元素右侧35像素 */
color: #f1f1f1; /* 文本颜色为浅灰色 */
font-size: 15px; /* 字体大小为40像素 */
font-weight: bold; /* 字体加粗 */
transition: 0.3s; /* 过渡效果,0.3秒内完成 */
}
.close:hover,
.close:focus {
color: #bbb;
text-decoration: none;
cursor: pointer;
}
</style>
<script type="text/javascript">var FOLDER_ALL_CASES = false; // 是否为精简模式的标记
var ERROR_INFOS = []; // 错误信息列表
var current_error_idx = -1;
// 页面加载后执行的函数
window.addEventListener("load", function(){
// 所有 .folder_header 添加点击事件处理
let folderHeaderEles = document.querySelectorAll(".folder_header");
folderHeaderEles.forEach(function(ele) {
ele.addEventListener("click", function(event) {
let fb = event.target.closest('.folder_header').nextElementSibling;
fb.style.display = fb.style.display === 'none' ? 'block' : 'none';
});
});
// 找到所有的错误信息对象
ERROR_INFOS = document.querySelectorAll(".error-info");
// 获取所有图片元素
let images = document.querySelectorAll('.modal-image');
// 获取模态框元素
let modal = document.getElementById("imageModal");
// 获取模态框中的图片元素
let modalImg = document.getElementById("img01");
// 获取关闭按钮元素
let span = document.getElementsByClassName("close")[0];
// 为每个图片添加点击事件监听器
images.forEach(function(img) {
img.addEventListener("click", function() {
modal.style.display = "block"; // 显示模态框
modalImg.src = this.src; // 设置模态框中的图片为点击的图片
});
});
// 当点击关闭按钮时,隐藏模态框
span.onclick = function() {
modal.style.display = "none";
};
// 当点击模态框外区域时,隐藏模态框
window.onclick = function(event) {
if (event.target == modal) {
modal.style.display = "none";
}
};
});
function toggle_folder_all_cases(){
let eles = document.querySelectorAll(".folder_body");
FOLDER_ALL_CASES = !FOLDER_ALL_CASES;
document.getElementById('display_mode').innerHTML = FOLDER_ALL_CASES ? "Detail" : "Summary";
for (const ele of eles){
ele.style.display = FOLDER_ALL_CASES ? "none" : "block";
}
}
function previous_error(){
// 查找错误必须是详细模式
if (FOLDER_ALL_CASES)
toggle_folder_all_cases()
current_error_idx -= 1;
if (current_error_idx < 0)
current_error_idx = 0;
let error = ERROR_INFOS[current_error_idx];
error.scrollIntoView({behavior: "smooth", block: "center", inline: "start"});
}
function next_error(){
// 查找错误必须是详细模式
if (FOLDER_ALL_CASES)
toggle_folder_all_cases()
current_error_idx += 1;
if (current_error_idx > ERROR_INFOS.length - 1)
current_error_idx = ERROR_INFOS.length - 1;
let error = ERROR_INFOS[current_error_idx];
error.scrollIntoView({behavior: "smooth", block: "center", inline: "start"});
}
</script>
</head>
<body>
<div class="modal" id="imageModal">
<div>
<img class="modal-content" id="img01">
<span class="close">关闭</span>
</div>
</div>
<div class="main_section">
<h1 style="font-family: auto">兰州中石化项目议题申报测试报告</h1>
<h3>统计结果</h3>
<div class="result">
<table class="result_table">
<tbody>
<tr>
<td>hytest 版本</td>
<td>0.8.12</td>
</tr>
<tr>
<td>开始时间</td>
<td>2025/06/10 15:20:56</td>
</tr>
<tr>
<td>结束时间</td>
<td>2025/06/10 15:20:56</td>
</tr>
<tr>
<td>耗时</td>
<td>0.054 秒</td>
</tr>
<tr>
<td>预备执行用例数量</td>
<td>3</td>
</tr>
<tr>
<td>实际执用例行数量</td>
<td>0</td>
</tr>
<tr>
<td>通过</td>
<td>0</td>
</tr>
<tr>
<td>失败</td>
<td style="">0</td>
</tr>
<tr>
<td>异常</td>
<td style="">0</td>
</tr>
<tr>
<td>阻塞</td>
<td style="color:red">3</td>
</tr>
<tr>
<td>套件初始化失败</td>
<td style="color:red">1</td>
</tr>
<tr>
<td>套件清除 失败</td>
<td style="color:red">1</td>
</tr>
<tr>
<td>用例初始化失败</td>
<td style="">0</td>
</tr>
<tr>
<td>用例清除 失败</td>
<td style="">0</td>
</tr>
</tbody>
</table>
<div class="result_barchart">
<div class="barchar_item">
<span>用例通过 0% : 0 个</span>
<div class="barchart_barbox">
<div class="barchart_bar" style="width: 0.0%; background-color: #04AA6D;"></div>
</div>
</div>
<div class="barchar_item">
<span>用例失败 0% : 0 个</span>
<div class="barchart_barbox">
<div class="barchart_bar" style="width: 0.0%; background-color: #bb4069;"></div>
</div>
</div>
<div class="barchar_item">
<span>用例异常 0% : 0 个</span>
<div class="barchart_barbox">
<div class="barchart_bar" style="width: 0.0%; background-color: #9c27b0;"></div>
</div>
</div>
<div class="barchar_item">
<span>用例阻塞 100% : 3 个</span>
<div class="barchart_barbox">
<div class="barchart_bar" style="width: 100.0%; background-color: #dcbdbd;"></div>
</div>
</div>
</div>
</div>
<div style="margin-top:2em">
<h3 style="display:inline">执行日志</h3>
</div>
<div class="exec_log">
<div class="suite_dir" id="suite_dir cases\">
<div>
<span class="label">进入目录</span>
<span>cases\</span>
</div>
</div>
<div class="suite_dir" id="suite_dir cases\项目定制\兰州中石化项目25-05-24\议题申报\">
<div>
<span class="label">进入目录</span>
<span>cases\项目定制\兰州中石化项目25-05-24\议题申报\</span>
</div>
<div class="suite_setup setup fail" id="suite_setup setup cases\项目定制\兰州中石化项目25-05-24\议题申报\">
<div class="folder_header">
<span class="label">套件初始化</span>
<span>cases\项目定制\兰州中石化项目25-05-24\议题申报\</span>
<span class="executetime">2025-06-10 15:20:56</span>
</div>
<div class="folder_body">
<div class="case_step">
<span class="tag">步骤 #1</span>
<span>初始化浏览器</span>
</div>
<div class="info">'----------' 正在初始化浏览器 '----------'</div>
<div class="info">输入用户名:admin</div>
<div class="info error-info">suite setup fail | 'NoneType' object has no attribute 'find_element'
Traceback:
File &quot;E:\GithubData\自动化\ubains-module-test\预定系统\cases\项目定制\兰州中石化项目25-05-24\议题申报\__st__.py&quot;, line 17, in suite_setup
user_login(&quot;admin&quot;, &quot;Ubains@4321&quot;)
File &quot;E:\GithubData\自动化\ubains-module-test\预定系统\Base\base.py&quot;, line 172, in user_login
safe_send_keys((By.XPATH, &quot;//input[@placeholder='请输入账号或手机号或邮箱号']&quot;), f'{username}', wd)
File &quot;E:\GithubData\自动化\ubains-module-test\预定系统\Base\base.py&quot;, line 223, in safe_send_keys
element = WebDriverWait(wd, 20).until(EC.visibility_of_element_located(element_locator))
File &quot;E:\Python\lib\site-packages\selenium\webdriver\support\wait.py&quot;, line 137, in until
value = method(self._driver)
File &quot;E:\Python\lib\site-packages\selenium\webdriver\support\expected_conditions.py&quot;, line 224, in _predicate
return _element_if_visible(driver.find_element(*locator))
AttributeError: 'NoneType' object has no attribute 'find_element'
</div>
</div>
</div>
<div class="suite_teardown teardown fail" id="suite_teardown teardown cases\">
<div class="folder_header">
<span class="label">套件清除</span>
<span>cases\</span>
<span class="executetime">2025-06-10 15:20:56</span>
</div>
<div class="folder_body">
<div class="info">清除浏览器</div>
<div class="info error-info">suite teardown fail | 'NoneType' object has no attribute 'quit'
Traceback:
File &quot;E:\GithubData\自动化\ubains-module-test\预定系统\cases\__st__.py&quot;, line 24, in suite_teardown
browser_quit()
File &quot;E:\GithubData\自动化\ubains-module-test\预定系统\Base\base.py&quot;, line 752, in browser_quit
wd.quit()
AttributeError: 'NoneType' object has no attribute 'quit'
</div>
</div>
</div>
</div>
</div>
</div>
<div id="float_menu">
<div class="menu-item" onclick="document.querySelector(&quot;body&quot;).scrollIntoView()">页首</div>
<div class="menu-item" onclick="window.open(&quot;http://www.byhy.net/tut/auto/hytest/01&quot;, &quot;_blank&quot;); ">帮助</div>
<div class="menu-item" id="display_mode" onclick="toggle_folder_all_cases()">Summary</div>
<div class="error_jumper" display="block">
<div class="menu-item" onclick="previous_error()" title="上一个错误"></div>
<div class="menu-item" onclick="next_error()" title="下一个错误"></div>
</div>
</div>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<title>兰州中石化项目议题申报测试报告</title>
<meta charset="UTF-8">
<style>body {
font-family: consolas, Verdana, sans-serif;
font-size: 1.2em;
color: #696e71;
display: grid;
grid-template-columns: 1fr 5rem;
}
.main_section {
width: 90%;
margin: 0 auto;
}
#float_menu{
position:fixed;
top:0;
right:0;
text-align: center;
}
#float_menu .menu-item {
cursor: pointer;
padding: .5em;
margin: .5em 0;
color: #c08580;
background-color: #f8f0ef;
font-size: 1.2em;
}
.result{
display: flex;
}
.result_table{
border-collapse: collapse;
border: 1px solid #f0e0e5;
width: 30em;
text-align: center;
font-size: 1.0em;
}
.result_table td{
border: 1px solid #f0e0e5;
padding: .3em;
}
.result_barchart{
width: 30em;
margin: 0 5em 0 5em;
}
.barchar_item{
margin: 2.5rem 0;
}
.barchart_barbox {
margin: 0.5em 0;
width: 100%;
background-color: #fff;
border: 1px solid #86c2dd;
border-radius: .2em;
}
.barchart_bar {
text-align: right;
height: 1.2rem;
}
.h3_button {
margin: 1.5em;
cursor: pointer;
color: #03a9f4;
}
.info
{
white-space:pre-wrap;
margin: .8em 1.5em;
}
.error-info
{
color: #a64747
}
.suite_dir {
margin: 1em .2em;
padding: .3em;
/* background-color: #dfeff6; */
border: 1px solid #bcd8e4;
}
.suite_file {
margin: 1em .2em;
padding: .3em;
border: 1px solid #bcd8e4;
}
.case {
margin: 1em .2em;
/* padding: .3em; */
border: 1px solid #e7d4d4;
}
.case_class_path{
margin: 0em 1em;
}
.folder_header {
padding: .2em .7em;
background-color: #fffaf9;
cursor: pointer;
}
.setup{
margin: .2em;
/* padding: .3em; */
/* border: 1px solid #e7d4d4; */
}
.teardown{
margin: .2em;
/* padding: .3em;*/
/* border: 1px solid #e7d4d4; */
}
.test_steps{
margin: .2em;
padding: .3em;
/* border: 1px solid #e7d4d4; */
}
.label {
display: inline-block;
padding: .1em .5em;
font-size: .88em;
letter-spacing: 1px;
white-space: nowrap;
color: #0d6ebc;
border-radius: .2em;
min-width: 5em;
margin-right: 2em;
font-family: consolas;
}
/* .suite_setup .label{
color: #219e26 ;
}
.suite_teardown .label{
color: #219e26;
} */
/* .case.pass .casename{
color: #329132 ;
} */
.case.pass .caselabel{
color: white;
background-color: #3b9e3f;
}
/* .case.fail .casename{
color: #a64747;
} */
.case.fail .caselabel{
color: white;
background-color: #a64747;
}
/* .case.abort .casename{
color: #953ab7;
} */
.case.abort .caselabel{
color: white;
background-color: #9c27b0;
}
.case_step {
margin: .8em;
}
.checkpoint_pass {
margin: .8em;
}
.checkpoint_fail {
margin: .8em;
}
.case_step .tag{
color: #2196f3;;
margin: .3em 1em .3em 0;
padding: .1em .3em;
font-size: .92em;
}
.checkpoint_pass .tag{
color: #009806;
margin:.3em 1em .3em .5em;
padding: .1em .3em;
font-size: .92em;
}
.checkpoint_fail .tag{
color: #9c2020;
margin:.3em 1em .3em .5em;
padding: .1em .3em;
font-size: .92em;
}
.screenshot {
border: 1px solid #86c2dd;
}
.executetime {
float: right;
}
/* 模态框内容 */
.modal-content {
margin: auto;
display: block;
width: 95%;
max-width: 700px;
max-height: 80vh; /* 设置最大高度为视口高度的80% */
object-fit: contain; /* 保持图片的宽高比 */
zoom: 3;
}
/* 模态框 */
.modal {
display: none; /* 隐藏 */
position: fixed; /* 固定位置 */
z-index: 1; /* 坐在顶部 */
padding-top: 40px; /* 在图片上方添加一些内边距 */
left: 0;
top: 0;
width: 100%; /* 宽度 */
height: 100%; /* 高度 */
overflow: auto; /* 启用滚动 */
background-color: rgb(0,0,0); /* 背景颜色 */
background-color: rgba(0,0,0,0.9); /* 黑色背景半透明 */
}
/* 关闭按钮 */
.close {
position: absolute; /* 定义元素的定位方式为绝对定位 */
top: 10px; /* 距离最近的已定位祖先元素顶部15像素 */
right: 30px; /* 距离最近的已定位祖先元素右侧35像素 */
color: #f1f1f1; /* 文本颜色为浅灰色 */
font-size: 15px; /* 字体大小为40像素 */
font-weight: bold; /* 字体加粗 */
transition: 0.3s; /* 过渡效果,0.3秒内完成 */
}
.close:hover,
.close:focus {
color: #bbb;
text-decoration: none;
cursor: pointer;
}
</style>
<script type="text/javascript">var FOLDER_ALL_CASES = false; // 是否为精简模式的标记
var ERROR_INFOS = []; // 错误信息列表
var current_error_idx = -1;
// 页面加载后执行的函数
window.addEventListener("load", function(){
// 所有 .folder_header 添加点击事件处理
let folderHeaderEles = document.querySelectorAll(".folder_header");
folderHeaderEles.forEach(function(ele) {
ele.addEventListener("click", function(event) {
let fb = event.target.closest('.folder_header').nextElementSibling;
fb.style.display = fb.style.display === 'none' ? 'block' : 'none';
});
});
// 找到所有的错误信息对象
ERROR_INFOS = document.querySelectorAll(".error-info");
// 获取所有图片元素
let images = document.querySelectorAll('.modal-image');
// 获取模态框元素
let modal = document.getElementById("imageModal");
// 获取模态框中的图片元素
let modalImg = document.getElementById("img01");
// 获取关闭按钮元素
let span = document.getElementsByClassName("close")[0];
// 为每个图片添加点击事件监听器
images.forEach(function(img) {
img.addEventListener("click", function() {
modal.style.display = "block"; // 显示模态框
modalImg.src = this.src; // 设置模态框中的图片为点击的图片
});
});
// 当点击关闭按钮时,隐藏模态框
span.onclick = function() {
modal.style.display = "none";
};
// 当点击模态框外区域时,隐藏模态框
window.onclick = function(event) {
if (event.target == modal) {
modal.style.display = "none";
}
};
});
function toggle_folder_all_cases(){
let eles = document.querySelectorAll(".folder_body");
FOLDER_ALL_CASES = !FOLDER_ALL_CASES;
document.getElementById('display_mode').innerHTML = FOLDER_ALL_CASES ? "Detail" : "Summary";
for (const ele of eles){
ele.style.display = FOLDER_ALL_CASES ? "none" : "block";
}
}
function previous_error(){
// 查找错误必须是详细模式
if (FOLDER_ALL_CASES)
toggle_folder_all_cases()
current_error_idx -= 1;
if (current_error_idx < 0)
current_error_idx = 0;
let error = ERROR_INFOS[current_error_idx];
error.scrollIntoView({behavior: "smooth", block: "center", inline: "start"});
}
function next_error(){
// 查找错误必须是详细模式
if (FOLDER_ALL_CASES)
toggle_folder_all_cases()
current_error_idx += 1;
if (current_error_idx > ERROR_INFOS.length - 1)
current_error_idx = ERROR_INFOS.length - 1;
let error = ERROR_INFOS[current_error_idx];
error.scrollIntoView({behavior: "smooth", block: "center", inline: "start"});
}
</script>
</head>
<body>
<div class="modal" id="imageModal">
<div>
<img class="modal-content" id="img01">
<span class="close">关闭</span>
</div>
</div>
<div class="main_section">
<h1 style="font-family: auto">兰州中石化项目议题申报测试报告</h1>
<h3>统计结果</h3>
<div class="result">
<table class="result_table">
<tbody>
<tr>
<td>hytest 版本</td>
<td>0.8.12</td>
</tr>
<tr>
<td>开始时间</td>
<td>2025/06/10 15:32:23</td>
</tr>
<tr>
<td>结束时间</td>
<td>2025/06/10 15:33:25</td>
</tr>
<tr>
<td>耗时</td>
<td>62.419 秒</td>
</tr>
<tr>
<td>预备执行用例数量</td>
<td>3</td>
</tr>
<tr>
<td>实际执用例行数量</td>
<td>3</td>
</tr>
<tr>
<td>通过</td>
<td>1</td>
</tr>
<tr>
<td>失败</td>
<td style="">0</td>
</tr>
<tr>
<td>异常</td>
<td style="color:red">2</td>
</tr>
<tr>
<td>阻塞</td>
<td style="">0</td>
</tr>
<tr>
<td>套件初始化失败</td>
<td style="">0</td>
</tr>
<tr>
<td>套件清除 失败</td>
<td style="">0</td>
</tr>
<tr>
<td>用例初始化失败</td>
<td style="">0</td>
</tr>
<tr>
<td>用例清除 失败</td>
<td style="">0</td>
</tr>
</tbody>
</table>
<div class="result_barchart">
<div class="barchar_item">
<span>用例通过 33.3% : 1 个</span>
<div class="barchart_barbox">
<div class="barchart_bar" style="width: 33.3%; background-color: #04AA6D;"></div>
</div>
</div>
<div class="barchar_item">
<span>用例失败 0% : 0 个</span>
<div class="barchart_barbox">
<div class="barchart_bar" style="width: 0.0%; background-color: #bb4069;"></div>
</div>
</div>
<div class="barchar_item">
<span>用例异常 66.7% : 2 个</span>
<div class="barchart_barbox">
<div class="barchart_bar" style="width: 66.7%; background-color: #9c27b0;"></div>
</div>
</div>
<div class="barchar_item">
<span>用例阻塞 0% : 0 个</span>
<div class="barchart_barbox">
<div class="barchart_bar" style="width: 0.0%; background-color: #dcbdbd;"></div>
</div>
</div>
</div>
</div>
<div style="margin-top:2em">
<h3 style="display:inline">执行日志</h3>
</div>
<div class="exec_log">
<div class="suite_dir" id="suite_dir cases\">
<div>
<span class="label">进入目录</span>
<span>cases\</span>
</div>
</div>
<div class="suite_dir" id="suite_dir cases\项目定制\兰州中石化项目25-05-24\议题申报\">
<div>
<span class="label">进入目录</span>
<span>cases\项目定制\兰州中石化项目25-05-24\议题申报\</span>
</div>
<div class="suite_setup setup" id="suite_setup setup cases\项目定制\兰州中石化项目25-05-24\议题申报\">
<div class="folder_header">
<span class="label">套件初始化</span>
<span>cases\项目定制\兰州中石化项目25-05-24\议题申报\</span>
<span class="executetime">2025-06-10 15:32:23</span>
</div>
<div class="folder_body">
<div class="case_step">
<span class="tag">步骤 #1</span>
<span>初始化浏览器</span>
</div>
<div class="info">'----------' 正在初始化浏览器 '----------'</div>
<div class="info">'----------' 浏览器初始化完成 '----------'</div>
<div class="info">输入用户名:admin</div>
<div class="info">输入密码:Ubains@4321</div>
<div class="info">输入验证码:csba</div>
<div class="info">点击登录按钮</div>
</div>
</div>
</div>
<div class="suite_file" id="suite_file cases\项目定制\兰州中石化项目25-05-24\议题申报\议题申报.py">
<div>
<span class="label">进入文件</span>
<span>cases\项目定制\兰州中石化项目25-05-24\议题申报\议题申报.py</span>
</div>
<div class="case pass" id="case_00000001">
<div class="folder_header">
<span class="label caselabel">用例 PASS</span>
<span class="casename">议题申报001</span>
<span class="executetime">2025-06-10 15:32:33</span>
</div>
<div class="folder_body">
<span class="case_class_path">cases\项目定制\兰州中石化项目25-05-24\议题申报\议题申报.py::TopicDeclaration</span>
<div class="test_steps" id="test_steps 议题申报001">
<span class="label">测试步骤</span>
<div class="info">点击【议题申报】按钮</div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //body/div[@class='el-dialog__wrapper']/div[@aria-label='dialog']/div[@class='el-dialog__body']/div[@class='dialog_content']/div[1]/div[2]/div[1]/div[1]、元素类型: getText、元素值: 、预期结果: admin</div>
<div class="info">获取到的文本信息为:申报人:
admin</div>
<div class="checkpoint_pass">
<span class="tag">检查点 PASS</span>
<span>获取到的文本信息为:申报人:
admin</span>
</div>
<div>
<img class="modal-image screenshot" src="imgs/20250610153234961855.png" width="50">
</div>
</div>
</div>
</div>
<div class="case abort" id="case_00000002">
<div class="folder_header">
<span class="label caselabel">用例 ABORT</span>
<span class="casename">议题申报003</span>
<span class="executetime">2025-06-10 15:32:41</span>
</div>
<div class="folder_body">
<span class="case_class_path">cases\项目定制\兰州中石化项目25-05-24\议题申报\议题申报.py::TopicDeclaration</span>
<div class="test_steps" id="test_steps 议题申报003">
<span class="label">测试步骤</span>
<div class="info">点击【议题申报】按钮</div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //p[@class='el-message__content']、元素类型: getTips、元素值: 、预期结果: 请输入议题名称</div>
<div class="info">Exception occurred: Message:
Stacktrace:
GetHandleVerifier [0x0x7ff6548a91f5+2853845]
GetHandleVerifier [0x0x7ff654603ac0+79008]
(No symbol) [0x0x7ff6543c9bda]
(No symbol) [0x0x7ff6544200f6]
(No symbol) [0x0x7ff6544203ac]
(No symbol) [0x0x7ff654473b07]
(No symbol) [0x0x7ff6544484ff]
(No symbol) [0x0x7ff6544708f5]
(No symbol) [0x0x7ff654448293]
(No symbol) [0x0x7ff654411061]
(No symbol) [0x0x7ff654411df3]
GetHandleVerifier [0x0x7ff6548d410d+3029741]
GetHandleVerifier [0x0x7ff6548ce52d+3006221]
GetHandleVerifier [0x0x7ff6548ed5b2+3133330]
GetHandleVerifier [0x0x7ff65461d98e+185198]
GetHandleVerifier [0x0x7ff654624edf+215231]
GetHandleVerifier [0x0x7ff65460c324+113924]
GetHandleVerifier [0x0x7ff65460c4d9+114361]
GetHandleVerifier [0x0x7ff6545f3208+11240]
BaseThreadInitThunk [0x0x7ffb2264e8d7+23]
RtlUserThreadStart [0x0x7ffb2449c5dc+44]
</div>
<div class="info">获取到的提示信息为:None</div>
<div class="info error-info">argument of type 'NoneType' is not iterable
Traceback:
File &quot;E:\GithubData\自动化\ubains-module-test\预定系统\cases\项目定制\兰州中石化项目25-05-24\议题申报\议题申报.py&quot;, line 65, in teststeps
CHECK_POINT(f&quot;获取到的提示信息为:{notify_text}&quot;, expented_result in notify_text)
TypeError: argument of type 'NoneType' is not iterable
</div>
</div>
</div>
</div>
<div class="case abort" id="case_00000003">
<div class="folder_header">
<span class="label caselabel">用例 ABORT</span>
<span class="casename">议题申报004</span>
<span class="executetime">2025-06-10 15:33:06</span>
</div>
<div class="folder_body">
<span class="case_class_path">cases\项目定制\兰州中石化项目25-05-24\议题申报\议题申报.py::TopicDeclaration</span>
<div class="test_steps" id="test_steps 议题申报004">
<span class="label">测试步骤</span>
<div class="info">点击【议题申报】按钮</div>
<div class="info error-info">Message: element click intercepted: Element &lt;div data-v-6ef76e62=&quot;&quot; data-v-b2520026=&quot;&quot; class=&quot;nav_item&quot; id=&quot;CreateTopic&quot;&gt;...&lt;/div&gt; is not clickable at point (191, 358). Other element would receive the click: &lt;div data-v-b7819456=&quot;&quot; class=&quot;el-dialog__wrapper&quot; style=&quot;z-index: 2001;&quot;&gt;...&lt;/div&gt;
(Session info: chrome=137.0.7151.41)
Stacktrace:
GetHandleVerifier [0x0x7ff6548a91f5+2853845]
GetHandleVerifier [0x0x7ff654603ac0+79008]
(No symbol) [0x0x7ff6543c9bda]
(No symbol) [0x0x7ff6544280e9]
(No symbol) [0x0x7ff654425a8b]
(No symbol) [0x0x7ff654422ad1]
(No symbol) [0x0x7ff6544219d1]
(No symbol) [0x0x7ff654413004]
(No symbol) [0x0x7ff6544484ba]
(No symbol) [0x0x7ff6544128b6]
(No symbol) [0x0x7ff6544486d0]
(No symbol) [0x0x7ff6544708f5]
(No symbol) [0x0x7ff654448293]
(No symbol) [0x0x7ff654411061]
(No symbol) [0x0x7ff654411df3]
GetHandleVerifier [0x0x7ff6548d410d+3029741]
GetHandleVerifier [0x0x7ff6548ce52d+3006221]
GetHandleVerifier [0x0x7ff6548ed5b2+3133330]
GetHandleVerifier [0x0x7ff65461d98e+185198]
GetHandleVerifier [0x0x7ff654624edf+215231]
GetHandleVerifier [0x0x7ff65460c324+113924]
GetHandleVerifier [0x0x7ff65460c4d9+114361]
GetHandleVerifier [0x0x7ff6545f3208+11240]
BaseThreadInitThunk [0x0x7ffb2264e8d7+23]
RtlUserThreadStart [0x0x7ffb2449c5dc+44]
Traceback:
File &quot;E:\GithubData\自动化\ubains-module-test\预定系统\cases\项目定制\兰州中石化项目25-05-24\议题申报\议题申报.py&quot;, line 37, in teststeps
safe_click((By.XPATH, &quot;//div[@id='CreateTopic']&quot;), wd)
File &quot;E:\GithubData\自动化\ubains-module-test\预定系统\Base\base.py&quot;, line 252, in safe_click
element.click()
File &quot;E:\Python\lib\site-packages\selenium\webdriver\remote\webelement.py&quot;, line 119, in click
self._execute(Command.CLICK_ELEMENT)
File &quot;E:\Python\lib\site-packages\selenium\webdriver\remote\webelement.py&quot;, line 572, in _execute
return self._parent.execute(command, params)
File &quot;E:\Python\lib\site-packages\selenium\webdriver\remote\webdriver.py&quot;, line 448, in execute
self.error_handler.check_response(response)
File &quot;E:\Python\lib\site-packages\selenium\webdriver\remote\errorhandler.py&quot;, line 232, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.ElementClickInterceptedException: Message: element click intercepted: Element &lt;div data-v-6ef76e62=&quot;&quot; data-v-b2520026=&quot;&quot; class=&quot;nav_item&quot; id=&quot;CreateTopic&quot;&gt;...&lt;/div&gt; is not clickable at point (191, 358). Other element would receive the click: &lt;div data-v-b7819456=&quot;&quot; class=&quot;el-dialog__wrapper&quot; style=&quot;z-index: 2001;&quot;&gt;...&lt;/div&gt;
(Session info: chrome=137.0.7151.41)
Stacktrace:
GetHandleVerifier [0x0x7ff6548a91f5+2853845]
GetHandleVerifier [0x0x7ff654603ac0+79008]
(No symbol) [0x0x7ff6543c9bda]
(No symbol) [0x0x7ff6544280e9]
(No symbol) [0x0x7ff654425a8b]
(No symbol) [0x0x7ff654422ad1]
(No symbol) [0x0x7ff6544219d1]
(No symbol) [0x0x7ff654413004]
(No symbol) [0x0x7ff6544484ba]
(No symbol) [0x0x7ff6544128b6]
(No symbol) [0x0x7ff6544486d0]
(No symbol) [0x0x7ff6544708f5]
(No symbol) [0x0x7ff654448293]
(No symbol) [0x0x7ff654411061]
(No symbol) [0x0x7ff654411df3]
GetHandleVerifier [0x0x7ff6548d410d+3029741]
GetHandleVerifier [0x0x7ff6548ce52d+3006221]
GetHandleVerifier [0x0x7ff6548ed5b2+3133330]
GetHandleVerifier [0x0x7ff65461d98e+185198]
GetHandleVerifier [0x0x7ff654624edf+215231]
GetHandleVerifier [0x0x7ff65460c324+113924]
GetHandleVerifier [0x0x7ff65460c4d9+114361]
GetHandleVerifier [0x0x7ff6545f3208+11240]
BaseThreadInitThunk [0x0x7ffb2264e8d7+23]
RtlUserThreadStart [0x0x7ffb2449c5dc+44]
</div>
</div>
</div>
</div>
<div class="suite_teardown teardown" id="suite_teardown teardown cases\项目定制\兰州中石化项目25-05-24\议题申报\">
<div class="folder_header">
<span class="label">套件清除</span>
<span>cases\项目定制\兰州中石化项目25-05-24\议题申报\</span>
<span class="executetime">2025-06-10 15:33:07</span>
</div>
<div class="folder_body"></div>
</div>
<div class="suite_teardown teardown" id="suite_teardown teardown cases\">
<div class="folder_header">
<span class="label">套件清除</span>
<span>cases\</span>
<span class="executetime">2025-06-10 15:33:09</span>
</div>
<div class="folder_body">
<div class="info">清除浏览器</div>
</div>
</div>
</div>
</div>
</div>
<div id="float_menu">
<div class="menu-item" onclick="document.querySelector(&quot;body&quot;).scrollIntoView()">页首</div>
<div class="menu-item" onclick="window.open(&quot;http://www.byhy.net/tut/auto/hytest/01&quot;, &quot;_blank&quot;); ">帮助</div>
<div class="menu-item" id="display_mode" onclick="toggle_folder_all_cases()">Summary</div>
<div class="error_jumper" display="block">
<div class="menu-item" onclick="previous_error()" title="上一个错误"></div>
<div class="menu-item" onclick="next_error()" title="下一个错误"></div>
</div>
</div>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<title>兰州中石化项目议题申报测试报告</title>
<meta charset="UTF-8">
<style>body {
font-family: consolas, Verdana, sans-serif;
font-size: 1.2em;
color: #696e71;
display: grid;
grid-template-columns: 1fr 5rem;
}
.main_section {
width: 90%;
margin: 0 auto;
}
#float_menu{
position:fixed;
top:0;
right:0;
text-align: center;
}
#float_menu .menu-item {
cursor: pointer;
padding: .5em;
margin: .5em 0;
color: #c08580;
background-color: #f8f0ef;
font-size: 1.2em;
}
.result{
display: flex;
}
.result_table{
border-collapse: collapse;
border: 1px solid #f0e0e5;
width: 30em;
text-align: center;
font-size: 1.0em;
}
.result_table td{
border: 1px solid #f0e0e5;
padding: .3em;
}
.result_barchart{
width: 30em;
margin: 0 5em 0 5em;
}
.barchar_item{
margin: 2.5rem 0;
}
.barchart_barbox {
margin: 0.5em 0;
width: 100%;
background-color: #fff;
border: 1px solid #86c2dd;
border-radius: .2em;
}
.barchart_bar {
text-align: right;
height: 1.2rem;
}
.h3_button {
margin: 1.5em;
cursor: pointer;
color: #03a9f4;
}
.info
{
white-space:pre-wrap;
margin: .8em 1.5em;
}
.error-info
{
color: #a64747
}
.suite_dir {
margin: 1em .2em;
padding: .3em;
/* background-color: #dfeff6; */
border: 1px solid #bcd8e4;
}
.suite_file {
margin: 1em .2em;
padding: .3em;
border: 1px solid #bcd8e4;
}
.case {
margin: 1em .2em;
/* padding: .3em; */
border: 1px solid #e7d4d4;
}
.case_class_path{
margin: 0em 1em;
}
.folder_header {
padding: .2em .7em;
background-color: #fffaf9;
cursor: pointer;
}
.setup{
margin: .2em;
/* padding: .3em; */
/* border: 1px solid #e7d4d4; */
}
.teardown{
margin: .2em;
/* padding: .3em;*/
/* border: 1px solid #e7d4d4; */
}
.test_steps{
margin: .2em;
padding: .3em;
/* border: 1px solid #e7d4d4; */
}
.label {
display: inline-block;
padding: .1em .5em;
font-size: .88em;
letter-spacing: 1px;
white-space: nowrap;
color: #0d6ebc;
border-radius: .2em;
min-width: 5em;
margin-right: 2em;
font-family: consolas;
}
/* .suite_setup .label{
color: #219e26 ;
}
.suite_teardown .label{
color: #219e26;
} */
/* .case.pass .casename{
color: #329132 ;
} */
.case.pass .caselabel{
color: white;
background-color: #3b9e3f;
}
/* .case.fail .casename{
color: #a64747;
} */
.case.fail .caselabel{
color: white;
background-color: #a64747;
}
/* .case.abort .casename{
color: #953ab7;
} */
.case.abort .caselabel{
color: white;
background-color: #9c27b0;
}
.case_step {
margin: .8em;
}
.checkpoint_pass {
margin: .8em;
}
.checkpoint_fail {
margin: .8em;
}
.case_step .tag{
color: #2196f3;;
margin: .3em 1em .3em 0;
padding: .1em .3em;
font-size: .92em;
}
.checkpoint_pass .tag{
color: #009806;
margin:.3em 1em .3em .5em;
padding: .1em .3em;
font-size: .92em;
}
.checkpoint_fail .tag{
color: #9c2020;
margin:.3em 1em .3em .5em;
padding: .1em .3em;
font-size: .92em;
}
.screenshot {
border: 1px solid #86c2dd;
}
.executetime {
float: right;
}
/* 模态框内容 */
.modal-content {
margin: auto;
display: block;
width: 95%;
max-width: 700px;
max-height: 80vh; /* 设置最大高度为视口高度的80% */
object-fit: contain; /* 保持图片的宽高比 */
zoom: 3;
}
/* 模态框 */
.modal {
display: none; /* 隐藏 */
position: fixed; /* 固定位置 */
z-index: 1; /* 坐在顶部 */
padding-top: 40px; /* 在图片上方添加一些内边距 */
left: 0;
top: 0;
width: 100%; /* 宽度 */
height: 100%; /* 高度 */
overflow: auto; /* 启用滚动 */
background-color: rgb(0,0,0); /* 背景颜色 */
background-color: rgba(0,0,0,0.9); /* 黑色背景半透明 */
}
/* 关闭按钮 */
.close {
position: absolute; /* 定义元素的定位方式为绝对定位 */
top: 10px; /* 距离最近的已定位祖先元素顶部15像素 */
right: 30px; /* 距离最近的已定位祖先元素右侧35像素 */
color: #f1f1f1; /* 文本颜色为浅灰色 */
font-size: 15px; /* 字体大小为40像素 */
font-weight: bold; /* 字体加粗 */
transition: 0.3s; /* 过渡效果,0.3秒内完成 */
}
.close:hover,
.close:focus {
color: #bbb;
text-decoration: none;
cursor: pointer;
}
</style>
<script type="text/javascript">var FOLDER_ALL_CASES = false; // 是否为精简模式的标记
var ERROR_INFOS = []; // 错误信息列表
var current_error_idx = -1;
// 页面加载后执行的函数
window.addEventListener("load", function(){
// 所有 .folder_header 添加点击事件处理
let folderHeaderEles = document.querySelectorAll(".folder_header");
folderHeaderEles.forEach(function(ele) {
ele.addEventListener("click", function(event) {
let fb = event.target.closest('.folder_header').nextElementSibling;
fb.style.display = fb.style.display === 'none' ? 'block' : 'none';
});
});
// 找到所有的错误信息对象
ERROR_INFOS = document.querySelectorAll(".error-info");
// 获取所有图片元素
let images = document.querySelectorAll('.modal-image');
// 获取模态框元素
let modal = document.getElementById("imageModal");
// 获取模态框中的图片元素
let modalImg = document.getElementById("img01");
// 获取关闭按钮元素
let span = document.getElementsByClassName("close")[0];
// 为每个图片添加点击事件监听器
images.forEach(function(img) {
img.addEventListener("click", function() {
modal.style.display = "block"; // 显示模态框
modalImg.src = this.src; // 设置模态框中的图片为点击的图片
});
});
// 当点击关闭按钮时,隐藏模态框
span.onclick = function() {
modal.style.display = "none";
};
// 当点击模态框外区域时,隐藏模态框
window.onclick = function(event) {
if (event.target == modal) {
modal.style.display = "none";
}
};
});
function toggle_folder_all_cases(){
let eles = document.querySelectorAll(".folder_body");
FOLDER_ALL_CASES = !FOLDER_ALL_CASES;
document.getElementById('display_mode').innerHTML = FOLDER_ALL_CASES ? "Detail" : "Summary";
for (const ele of eles){
ele.style.display = FOLDER_ALL_CASES ? "none" : "block";
}
}
function previous_error(){
// 查找错误必须是详细模式
if (FOLDER_ALL_CASES)
toggle_folder_all_cases()
current_error_idx -= 1;
if (current_error_idx < 0)
current_error_idx = 0;
let error = ERROR_INFOS[current_error_idx];
error.scrollIntoView({behavior: "smooth", block: "center", inline: "start"});
}
function next_error(){
// 查找错误必须是详细模式
if (FOLDER_ALL_CASES)
toggle_folder_all_cases()
current_error_idx += 1;
if (current_error_idx > ERROR_INFOS.length - 1)
current_error_idx = ERROR_INFOS.length - 1;
let error = ERROR_INFOS[current_error_idx];
error.scrollIntoView({behavior: "smooth", block: "center", inline: "start"});
}
</script>
</head>
<body>
<div class="modal" id="imageModal">
<div>
<img class="modal-content" id="img01">
<span class="close">关闭</span>
</div>
</div>
<div class="main_section">
<h1 style="font-family: auto">兰州中石化项目议题申报测试报告</h1>
<h3>统计结果</h3>
<div class="result">
<table class="result_table">
<tbody>
<tr>
<td>hytest 版本</td>
<td>0.8.12</td>
</tr>
<tr>
<td>开始时间</td>
<td>2025/06/10 15:36:24</td>
</tr>
<tr>
<td>结束时间</td>
<td>2025/06/10 15:38:16</td>
</tr>
<tr>
<td>耗时</td>
<td>112.179 秒</td>
</tr>
<tr>
<td>预备执行用例数量</td>
<td>3</td>
</tr>
<tr>
<td>实际执用例行数量</td>
<td>3</td>
</tr>
<tr>
<td>通过</td>
<td>3</td>
</tr>
<tr>
<td>失败</td>
<td style="">0</td>
</tr>
<tr>
<td>异常</td>
<td style="">0</td>
</tr>
<tr>
<td>阻塞</td>
<td style="">0</td>
</tr>
<tr>
<td>套件初始化失败</td>
<td style="">0</td>
</tr>
<tr>
<td>套件清除 失败</td>
<td style="">0</td>
</tr>
<tr>
<td>用例初始化失败</td>
<td style="">0</td>
</tr>
<tr>
<td>用例清除 失败</td>
<td style="">0</td>
</tr>
</tbody>
</table>
<div class="result_barchart">
<div class="barchar_item">
<span>用例通过 100% : 3 个</span>
<div class="barchart_barbox">
<div class="barchart_bar" style="width: 100.0%; background-color: #04AA6D;"></div>
</div>
</div>
<div class="barchar_item">
<span>用例失败 0% : 0 个</span>
<div class="barchart_barbox">
<div class="barchart_bar" style="width: 0.0%; background-color: #bb4069;"></div>
</div>
</div>
<div class="barchar_item">
<span>用例异常 0% : 0 个</span>
<div class="barchart_barbox">
<div class="barchart_bar" style="width: 0.0%; background-color: #9c27b0;"></div>
</div>
</div>
<div class="barchar_item">
<span>用例阻塞 0% : 0 个</span>
<div class="barchart_barbox">
<div class="barchart_bar" style="width: 0.0%; background-color: #dcbdbd;"></div>
</div>
</div>
</div>
</div>
<div style="margin-top:2em">
<h3 style="display:inline">执行日志</h3>
</div>
<div class="exec_log">
<div class="suite_dir" id="suite_dir cases\">
<div>
<span class="label">进入目录</span>
<span>cases\</span>
</div>
</div>
<div class="suite_dir" id="suite_dir cases\项目定制\兰州中石化项目25-05-24\议题申报\">
<div>
<span class="label">进入目录</span>
<span>cases\项目定制\兰州中石化项目25-05-24\议题申报\</span>
</div>
<div class="suite_setup setup" id="suite_setup setup cases\项目定制\兰州中石化项目25-05-24\议题申报\">
<div class="folder_header">
<span class="label">套件初始化</span>
<span>cases\项目定制\兰州中石化项目25-05-24\议题申报\</span>
<span class="executetime">2025-06-10 15:36:24</span>
</div>
<div class="folder_body">
<div class="case_step">
<span class="tag">步骤 #1</span>
<span>初始化浏览器</span>
</div>
<div class="info">'----------' 正在初始化浏览器 '----------'</div>
<div class="info">'----------' 浏览器初始化完成 '----------'</div>
<div class="info">输入用户名:admin</div>
<div class="info">输入密码:Ubains@4321</div>
<div class="info">输入验证码:csba</div>
<div class="info">点击登录按钮</div>
</div>
</div>
</div>
<div class="suite_file" id="suite_file cases\项目定制\兰州中石化项目25-05-24\议题申报\议题申报.py">
<div>
<span class="label">进入文件</span>
<span>cases\项目定制\兰州中石化项目25-05-24\议题申报\议题申报.py</span>
</div>
<div class="case pass" id="case_00000001">
<div class="folder_header">
<span class="label caselabel">用例 PASS</span>
<span class="casename">议题申报001</span>
<span class="executetime">2025-06-10 15:36:38</span>
</div>
<div class="folder_body">
<span class="case_class_path">cases\项目定制\兰州中石化项目25-05-24\议题申报\议题申报.py::TopicDeclaration</span>
<div class="test_steps" id="test_steps 议题申报001">
<span class="label">测试步骤</span>
<div class="info">点击【议题申报】按钮</div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //body/div[@class='el-dialog__wrapper']/div[@aria-label='dialog']/div[@class='el-dialog__body']/div[@class='dialog_content']/div[1]/div[2]/div[1]/div[1]、元素类型: getText、元素值: 、预期结果: admin</div>
<div class="info">获取到的文本信息为:申报人:
admin</div>
<div class="checkpoint_pass">
<span class="tag">检查点 PASS</span>
<span>获取到的文本信息为:申报人:
admin</span>
</div>
<div>
<img class="modal-image screenshot" src="imgs/20250610153639402739.png" width="75">
</div>
</div>
</div>
</div>
<div class="case pass" id="case_00000002">
<div class="folder_header">
<span class="label caselabel">用例 PASS</span>
<span class="casename">议题申报003</span>
<span class="executetime">2025-06-10 15:36:42</span>
</div>
<div class="folder_body">
<span class="case_class_path">cases\项目定制\兰州中石化项目25-05-24\议题申报\议题申报.py::TopicDeclaration</span>
<div class="test_steps" id="test_steps 议题申报003">
<span class="label">测试步骤</span>
<div class="info">点击【议题申报】按钮</div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //button[@id='create-topic-submit-button']、元素类型: click、元素值: 、预期结果: </div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //p[@class='el-message__content']、元素类型: getTips、元素值: 、预期结果: 请输入议题名称</div>
<div>
<img class="modal-image screenshot" src="imgs/20250610153645836984.png" width="50%">
</div>
<div class="info">获取到的提示信息为:请输入议题名称</div>
<div class="checkpoint_pass">
<span class="tag">检查点 PASS</span>
<span>获取到的提示信息为:请输入议题名称</span>
</div>
<div>
<img class="modal-image screenshot" src="imgs/20250610153647998160.png" width="75">
</div>
</div>
</div>
</div>
<div class="case pass" id="case_00000003">
<div class="folder_header">
<span class="label caselabel">用例 PASS</span>
<span class="casename">议题申报004</span>
<span class="executetime">2025-06-10 15:36:50</span>
</div>
<div class="folder_body">
<span class="case_class_path">cases\项目定制\兰州中石化项目25-05-24\议题申报\议题申报.py::TopicDeclaration</span>
<div class="test_steps" id="test_steps 议题申报004">
<span class="label">测试步骤</span>
<div class="info">点击【议题申报】按钮</div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //input[@id='create-topic-name-input']、元素类型: input、元素值: 议题申报测试003、预期结果: </div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //input[@id='create-topic-type-select']、元素类型: click、元素值: 、预期结果: </div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //div[@x-placement='bottom-start']//li[2]、元素类型: click、元素值: 、预期结果: </div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //textarea[@id='create-topic-remarks-textarea']、元素类型: input、元素值: 测试上会依据、预期结果: </div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //input[@placeholder='请选择责任单位']、元素类型: click、元素值: 、预期结果: </div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //span[contains(text(),'测试部门')]、元素类型: click、元素值: 、预期结果: </div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //button[@id='tree-selector-confirm']//span[contains(text(),'确定')]、元素类型: click、元素值: 、预期结果: </div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //input[@id='create-topic-reporter-select']、元素类型: click、元素值: 、预期结果: </div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //div[@x-placement='bottom-start']//span[contains(text(),'陈部门领导')]、元素类型: click、元素值: 、预期结果: </div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //input[@id='create-topic-proposed-meeting-time-datepicker']、元素类型: input、元素值: 2025-06-25、预期结果: </div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //input[@id='create-topic-reporting-duration-select']、元素类型: click、元素值: 、预期结果: </div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //span[contains(text(),'15分钟')]、元素类型: click、元素值: 、预期结果: </div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //input[@id='create-topic-department-leader-select']、元素类型: click、元素值: 、预期结果: </div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //li[@class='el-select-dropdown__item']//span[contains(text(),'陈部门领导')]、元素类型: click、元素值: 、预期结果: </div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //input[@id='create-topic-company-leader-select']、元素类型: click、元素值: 、预期结果: </div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //div[@x-placement='bottom-start']//span[contains(text(),'范公司主管领导')]、元素类型: click、元素值: 、预期结果: </div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //input[@id='create-topic-commission-leader-select']、元素类型: click、元素值: 、预期结果: </div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //li[@class='el-select-dropdown__item hover']//span[contains(text(),'陈公司委托领导')]、元素类型: click、元素值: 、预期结果: </div>
<div class="info">TimeoutException: Element ('xpath', &quot;//li[@class='el-select-dropdown__item hover']//span[contains(text(),'陈公司委托领导')]&quot;) not found or not clickable within 20 seconds.</div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //button[@id='create-topic-submit-button']//span[contains(text(),'提交')]、元素类型: click、元素值: 、预期结果: </div>
<div class="info">页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //p[@class='el-message__content']、元素类型: getTips、元素值: 、预期结果: 提交成功</div>
<div>
<img class="modal-image screenshot" src="imgs/20250610153753455878.png" width="50%">
</div>
<div class="info">获取到的提示信息为:提交成功</div>
<div class="checkpoint_pass">
<span class="tag">检查点 PASS</span>
<span>获取到的提示信息为:提交成功</span>
</div>
<div>
<img class="modal-image screenshot" src="imgs/20250610153755613613.png" width="75">
</div>
</div>
</div>
</div>
<div class="suite_teardown teardown" id="suite_teardown teardown cases\项目定制\兰州中石化项目25-05-24\议题申报\">
<div class="folder_header">
<span class="label">套件清除</span>
<span>cases\项目定制\兰州中石化项目25-05-24\议题申报\</span>
<span class="executetime">2025-06-10 15:37:57</span>
</div>
<div class="folder_body"></div>
</div>
<div class="suite_teardown teardown" id="suite_teardown teardown cases\">
<div class="folder_header">
<span class="label">套件清除</span>
<span>cases\</span>
<span class="executetime">2025-06-10 15:38:00</span>
</div>
<div class="folder_body">
<div class="info">清除浏览器</div>
</div>
</div>
</div>
</div>
</div>
<div id="float_menu">
<div class="menu-item" onclick="document.querySelector(&quot;body&quot;).scrollIntoView()">页首</div>
<div class="menu-item" onclick="window.open(&quot;http://www.byhy.net/tut/auto/hytest/01&quot;, &quot;_blank&quot;); ">帮助</div>
<div class="menu-item" id="display_mode" onclick="toggle_folder_all_cases()">Summary</div>
<div class="error_jumper" display="none">
<div class="menu-item" onclick="previous_error()" title="上一个错误"></div>
<div class="menu-item" onclick="next_error()" title="下一个错误"></div>
</div>
</div>
</body>
</html>
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -11,7 +11,7 @@
== cases\AI创会\AI创会.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\AI创会\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\AI创会\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: AI创会
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -57,7 +57,7 @@ XLSX文件已读取
== cases\会控-SMC\SMC会控.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会控-SMC\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会控-SMC\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会控-SMC
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -395,7 +395,7 @@ XLSX文件已读取
== cases\会控-腾讯会议\腾讯会控.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会控-腾讯会议\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会控-腾讯会议\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会控-腾讯会议
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -774,7 +774,7 @@ CSV文件已读取
== cases\会议修改\会议修改.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会议修改\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会议修改\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议修改
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -1577,7 +1577,7 @@ XLSX文件已读取
== cases\会议创建\会议创建.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会议创建\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会议创建\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议创建
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -2589,7 +2589,7 @@ XLSX文件已读取
== cases\会议历史记录\会议历史记录.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会议历史记录\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会议历史记录\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议历史记录
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -2772,7 +2772,7 @@ XLSX文件成功打开
{
"page": "HistoricalRecords",
"locator_type": "XPATH",
"locator_value": "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]",
"locator_value": "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]",
"element_type": "click",
"element_value": "",
"expented_result": ""
......@@ -2787,7 +2787,7 @@ XLSX文件成功打开
}
]
}
行 24 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试002', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 24 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试002', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 24 的功能类别: 工商银行项目-25-04-01
跳过行 24,功能类别不匹配: 工商银行项目-25-04-01 != 标准版
行 25 的 JSON 数据: {
......@@ -2820,7 +2820,7 @@ XLSX文件成功打开
{
"page": "HistoricalRecords",
"locator_type": "XPATH",
"locator_value": "//i[@class='el-collapse-item__arrow el-icon-arrow-right is-active']",
"locator_value": "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]",
"element_type": "click",
"element_value": "",
"expented_result": ""
......@@ -2843,7 +2843,7 @@ XLSX文件成功打开
}
]
}
行 25 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试003', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right is-active']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '深圳市'}]}
行 25 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试003', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '深圳市'}]}
行 25 的功能类别: 工商银行项目-25-04-01
跳过行 25,功能类别不匹配: 工商银行项目-25-04-01 != 标准版
行 26 的 JSON 数据: {
......@@ -2876,7 +2876,7 @@ XLSX文件成功打开
{
"page": "HistoricalRecords",
"locator_type": "XPATH",
"locator_value": "//i[@class='el-collapse-item__arrow el-icon-arrow-right is-active']",
"locator_value": "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]",
"element_type": "click",
"element_value": "",
"expented_result": ""
......@@ -2891,7 +2891,7 @@ XLSX文件成功打开
}
]
}
行 26 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试004', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'el-select')]//div[contains(@class,'el-input el-input--suffix')]//input[contains(@placeholder,'请选择')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right is-active']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[6]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '深圳市'}]}
行 26 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试004', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'el-select')]//div[contains(@class,'el-input el-input--suffix')]//input[contains(@placeholder,'请选择')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[6]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '深圳市'}]}
行 26 的功能类别: 工商银行项目-25-04-01
跳过行 26,功能类别不匹配: 工商银行项目-25-04-01 != 标准版
行 27 的 JSON 数据: {
......@@ -2964,7 +2964,7 @@ XLSX文件成功打开
{
"page": "HistoricalRecords",
"locator_type": "XPATH",
"locator_value": "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]",
"locator_value": "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]",
"element_type": "click",
"element_value": "",
"expented_result": ""
......@@ -2979,7 +2979,7 @@ XLSX文件成功打开
}
]
}
行 27 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试005', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 27 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试005', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 27 的功能类别: 工商银行项目-25-04-01
跳过行 27,功能类别不匹配: 工商银行项目-25-04-01 != 标准版
行 28 的 JSON 数据: {
......@@ -3052,7 +3052,7 @@ XLSX文件成功打开
{
"page": "HistoricalRecords",
"locator_type": "XPATH",
"locator_value": "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]",
"locator_value": "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]",
"element_type": "click",
"element_value": "",
"expented_result": ""
......@@ -3067,7 +3067,7 @@ XLSX文件成功打开
}
]
}
行 28 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试006', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[@class='el-select']//input[@placeholder='请选择']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 28 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试006', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[@class='el-select']//input[@placeholder='请选择']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 28 的功能类别: 工商银行项目-25-04-01
跳过行 28,功能类别不匹配: 工商银行项目-25-04-01 != 标准版
行 29 的 JSON 数据: {
......@@ -3116,7 +3116,7 @@ XLSX文件成功打开
{
"page": "HistoricalRecords",
"locator_type": "XPATH",
"locator_value": "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]",
"locator_value": "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]",
"element_type": "click",
"element_value": "",
"expented_result": ""
......@@ -3131,7 +3131,7 @@ XLSX文件成功打开
}
]
}
行 29 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试007', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[@class='el-select']//input[@placeholder='请选择']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 29 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试007', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[@class='el-select']//input[@placeholder='请选择']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 29 的功能类别: 工商银行项目-25-04-01
跳过行 29,功能类别不匹配: 工商银行项目-25-04-01 != 标准版
行 30 的 JSON 数据: {
......@@ -3220,7 +3220,7 @@ XLSX文件成功打开
{
"page": "HistoricalRecords",
"locator_type": "XPATH",
"locator_value": "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]",
"locator_value": "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]",
"element_type": "click",
"element_value": "",
"expented_result": ""
......@@ -3235,7 +3235,7 @@ XLSX文件成功打开
}
]
}
行 30 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试008', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[@class='el-select']//input[@placeholder='请选择']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 30 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试008', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[@class='el-select']//input[@placeholder='请选择']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 30 的功能类别: 工商银行项目-25-04-01
跳过行 30,功能类别不匹配: 工商银行项目-25-04-01 != 标准版
行 31 的 JSON 数据: None
......@@ -3654,7 +3654,7 @@ CSV文件已读取
== cases\会议审批\会议审批.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会议审批\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会议审批\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议审批
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -4238,7 +4238,7 @@ CSV文件已读取
== cases\会议室列表\会议室列表功能测试.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会议室列表\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会议室列表\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议室列表
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -4441,7 +4441,7 @@ XLSX文件已读取
== cases\会议室管理\会议室管理.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会议室管理\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会议室管理\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议室管理
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -5179,7 +5179,7 @@ CSV文件已读取
== cases\会议模板\会议模板.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会议模板\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会议模板\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议模板
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -5544,7 +5544,7 @@ CSV文件已读取
== cases\信息发布\信息发布.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\信息发布\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\信息发布\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 信息发布
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -5904,7 +5904,7 @@ XLSX文件已读取
== cases\信息统计\信息统计.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\信息统计\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\信息统计\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 信息统计
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -6270,7 +6270,7 @@ XLSX文件已读取
== cases\全局配置\全局配置.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\全局配置\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\全局配置\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 全局配置
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -6618,7 +6618,7 @@ XLSX文件已读取
== cases\安卓信息\安卓信息.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\安卓信息\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\安卓信息\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 安卓信息
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '截图二', '备注']
......@@ -6806,8 +6806,6 @@ CSV文件已读取
== cases\展厅巡检\03无纸化\01无纸化2.0同屏巡检.py
** no cases in this file , skip it.
== cases\展厅巡检\03无纸化\02无纸化1.0.py
......@@ -6893,7 +6891,7 @@ CSV文件已读取
== cases\授权码管理\授权码管理.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\授权码管理\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\授权码管理\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 授权码管理
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -7225,7 +7223,7 @@ XLSX文件已读取
== cases\登录模块\新-账号密码登录测试.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\登录模块\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\登录模块\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 登录页面
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -7429,7 +7427,7 @@ CSV文件已读取
== cases\系统管理\系统设置.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\系统管理\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\系统管理\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 系统管理
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -7774,7 +7772,7 @@ XLSX文件已读取
== cases\账号管理\账号管理.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\账号管理\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\账号管理\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 账号管理
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -8708,7 +8706,7 @@ CSV文件已读取
== cases\项目定制\兰州中石化项目25-05-24\代办事宜\代办事宜.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 代办事宜
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -9165,12 +9163,14 @@ XLSX文件成功打开
跳过行 135,JSON 数据为空
XLSX文件已读取
** no cases in this file , skip it.
== cases\项目定制\兰州中石化项目25-05-24\会议申报\__st__.py
== cases\项目定制\兰州中石化项目25-05-24\会议申报\会议申报功能测试.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议申报
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -13395,7 +13395,7 @@ XLSX文件已读取
== cases\项目定制\兰州中石化项目25-05-24\角色权限管理\角色权限管理.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 角色权限管理
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -13868,7 +13868,7 @@ XLSX文件已读取
== cases\项目定制\兰州中石化项目25-05-24\议题申报\议题申报.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 议题申报
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -17825,7 +17825,7 @@ XLSX文件已读取
== cases\项目定制\工商银行项目24-11-20\会议修改\车牌功能测试.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议修改
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -18628,7 +18628,7 @@ XLSX文件已读取
== cases\项目定制\工商银行项目24-11-20\会议创建\车牌功能测试.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议创建
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -19640,7 +19640,7 @@ XLSX文件已读取
== cases\项目定制\工商银行项目24-11-20\会议室管理\会议室同步.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议室管理
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -20306,7 +20306,7 @@ XLSX文件已读取
== cases\项目定制\工商银行项目24-11-20\用户管理\OA组织架构同步.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 账号管理
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -21163,7 +21163,7 @@ XLSX文件已读取
== cases\项目定制\长安大学项目25-03-17\会议审批\会议审批.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\长安大学测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\长安大学测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议审批
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -21383,149 +21383,124 @@ XLSX文件已读取
=== [ 执行测试用例 ] ===
预备执行用例数量 : 5
预备执行用例数量 : 1
========= 测试开始 : 20250610_195723 =========
========= 测试开始 : 20250611_115215 =========
>>> cases\
>>> cases\项目定制\兰州中石化项目25-05-24\代办事宜\
>>> cases\展厅巡检\03无纸化\
[ suite setup ] cases\项目定制\兰州中石化项目25-05-24\代办事宜\
[ suite setup ] cases\展厅巡检\03无纸化\
-- 第 1 步 -- 初始化浏览器
-- 第 1 步 -- 初始化设备1的adb连接
'----------' 正在初始化浏览器 '----------'
'----------' 浏览器初始化完成 '----------'
输入用户名:test@user2
输入密码:Ubains@1357
输入验证码:csba
点击登录按钮
点击【代办事宜】按钮
---------- ADB 连接初始化开始 ----------
目标设备: 192.168.5.156:5555
使用ADB路径: C:\Program Files\androidsdk\androidsdk\platform-tools\adb.exe
尝试 ADB 连接到设备: 192.168.5.156:5555
ADB连接命令返回码: 0
ADB连接命令输出: connected to 192.168.5.156:5555
获取设备列表验证连接状态...
找到 1 个设备
检测到设备: IP=192.168.5.156:5555, 状态=device
设备 192.168.5.156:5555 已连接并可用
** 检查点 ** 设备1的adb连接初始化检测 ----> 通过
>>> cases\项目定制\兰州中石化项目25-05-24\代办事宜\代办事宜.py
* 代办事宜001 - 2025-06-10 19:57:31
-- 第 2 步 -- 初始化设备2的adb连接
[ case execution steps ]
页面: AgencyMatters、元素定位类型: xpath、元素定位值: //div[@class='content']//div[1]//div[2]//div[1]//div[1]//div[2]//input[1]、元素类型: input、元素值: 自动化、预期结果:
picture imgs/20250610195739814315.png
页面: AgencyMatters、元素定位类型: xpath、元素定位值: //body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[1]/button[1]、元素类型: click、元素值: 、预期结果:
picture imgs/20250610195742122302.png
页面: AgencyMatters、元素定位类型: css selector、元素定位值: body > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(3) > table:nth-child(1) > tbody:nth-child(2) > tr:nth-child(1) > td:nth-child(2) > div:nth-child(1) > span:nth-child(1)、元素类型: getText、元素值: 、预期结果: 自动化
获取到的文本信息为:自动化-议题申报测试005
---------- ADB 连接初始化开始 ----------
目标设备: 192.168.5.157:5555
使用ADB路径: C:\Program Files\androidsdk\androidsdk\platform-tools\adb.exe
尝试 ADB 连接到设备: 192.168.5.157:5555
ADB连接命令返回码: 0
ADB连接命令输出: connected to 192.168.5.157:5555
获取设备列表验证连接状态...
找到 2 个设备
检测到设备: IP=192.168.5.156:5555, 状态=device
检测到设备: IP=192.168.5.157:5555, 状态=device
设备 192.168.5.157:5555 已连接并可用
** 检查点 ** 获取到的文本信息为:自动化-议题申报测试005 ----> 通过
** 检查点 ** 设备2的adb连接初始化检测 ----> 通过
picture imgs/20250610195742317923.png
PASS
* 代办事宜002 - 2025-06-10 19:57:42
-- 第 3 步 -- 初始化设备3的adb连接
[ case execution steps ]
页面: AgencyMatters、元素定位类型: xpath、元素定位值: //div[@class='content']//div[1]//div[2]//div[1]//div[1]//div[2]//input[1]、元素类型: input、元素值: 自动化、预期结果:
picture imgs/20250610195744812401.png
页面: AgencyMatters、元素定位类型: xpath、元素定位值: //body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[1]/button[1]、元素类型: click、元素值: 、预期结果:
picture imgs/20250610195747087141.png
页面: AgencyMatters、元素定位类型: css selector、元素定位值: body > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(3) > table:nth-child(1) > tbody:nth-child(2) > tr:nth-child(1) > td:nth-child(2) > div:nth-child(1) > span:nth-child(1)、元素类型: getText、元素值: 、预期结果: 自动化
获取到的文本信息为:自动化-议题申报测试005
---------- ADB 连接初始化开始 ----------
目标设备: 192.168.5.158:5555
使用ADB路径: C:\Program Files\androidsdk\androidsdk\platform-tools\adb.exe
尝试 ADB 连接到设备: 192.168.5.158:5555
ADB连接命令返回码: 0
ADB连接命令输出: connected to 192.168.5.158:5555
获取设备列表验证连接状态...
找到 3 个设备
检测到设备: IP=192.168.5.156:5555, 状态=device
检测到设备: IP=192.168.5.157:5555, 状态=device
检测到设备: IP=192.168.5.158:5555, 状态=device
设备 192.168.5.158:5555 已连接并可用
** 检查点 ** 获取到的文本信息为:自动化-议题申报测试005 ----> 通过
** 检查点 ** 设备3的adb连接初始化检测 ----> 通过
picture imgs/20250610195747270608.png
PASS
* 代办事宜003 - 2025-06-10 19:57:47
[ case execution steps ]
页面: AgencyMatters、元素定位类型: xpath、元素定位值: //body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]、元素类型: click、元素值: 、预期结果:
picture imgs/20250610195749967534.png
页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //div[contains(@class,'cell')][contains(text(),'陈部门领导')]、元素类型: getText、元素值: 、预期结果: 陈部门领导
获取到的文本信息为:陈部门领导
'----------' 正在初始化浏览器 '----------'
'----------' 浏览器初始化完成 '----------'
** 检查点 ** 获取到的文本信息为:陈部门领导 ----> 通过
picture imgs/20250610195750148386.png
PASS
>>> cases\展厅巡检\03无纸化\01无纸化2.0同屏巡检.py
* 代办事宜004 - 2025-06-10 19:57:50
* SameScreenShare - 2025-06-11 11:52:19
[ case execution steps ]
页面: AgencyMatters、元素定位类型: xpath、元素定位值: //body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]、元素类型: click、元素值: 、预期结果:
picture imgs/20250610195752851935.png
页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //button[@id='create-meeting-submit-button']、元素类型: click、元素值: 、预期结果:
picture imgs/20250610195755079609.png
页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //p[@class='el-message__content']、元素类型: getTips、元素值: 、预期结果: 审批成功
picture imgs/20250610195755240409.png
获取到的提示信息为:审批成功
** 检查点 ** 获取到的提示信息为:审批成功 ----> 通过
picture imgs/20250610195757410119.png
页面: TopicDeclaration、元素定位类型: xpath、元素定位值: 、元素类型: login、元素值: ['test@user1', 'Ubains@1357']、预期结果:
输入用户名:test@user1
输入密码:Ubains@1357
输入验证码:csba
点击登录按钮
页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]、元素类型: click、元素值: 、预期结果:
picture imgs/20250610195804197836.png
页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //div[contains(@class,'cell')][contains(text(),'范公司主管领导')]、元素类型: getText、元素值: 、预期结果: 范公司主管领导
获取到的文本信息为:范公司主管领导
** 检查点 ** 获取到的文本信息为:范公司主管领导 ----> 通过
picture imgs/20250610195804417002.png
这是设备B的界面
picture imgs/Exhibit_Inspect/No_PaperLess/BeforeShareDeviceB.png
这是设备A同屏共享的界面
picture imgs/Exhibit_Inspect/No_PaperLess/AfterShareDeviceA.png
这是设备B同屏共享的界面
picture imgs/Exhibit_Inspect/No_PaperLess/AfterShareDeviceB.png
执行退出同屏操作
这是设备A关闭同屏共享的界面
picture imgs/Exhibit_Inspect/No_PaperLess/QuitShareDeviceA.png
这是设备B关闭同屏共享的界面
picture imgs/Exhibit_Inspect/No_PaperLess/QuitShareDeviceB.png
PASS
* 代办事宜005 - 2025-06-10 19:58:04
[ case execution steps ]
页面: AgencyMatters、元素定位类型: xpath、元素定位值: //body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]、元素类型: click、元素值: 、预期结果:
picture imgs/20250610195807186779.png
页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //button[@id='create-meeting-submit-button']、元素类型: click、元素值: 、预期结果:
picture imgs/20250610195809426860.png
页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //p[@class='el-message__content']、元素类型: getTips、元素值: 、预期结果:
picture imgs/20250610195809623572.png
获取到的提示信息为:审批成功
** 检查点 ** 获取到的提示信息为:审批成功 ----> 通过
picture imgs/20250610195811795301.png
页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //div[contains(@class,'content')]//div[2]//div[2]//div[1]//div[1]//div[2]//input[1]、元素类型: input、元素值: 、预期结果: 自动化
picture imgs/20250610195814057312.png
页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[2]/div[2]/div[1]/button[1]/span[1]、元素类型: click、元素值: 、预期结果:
picture imgs/20250610195816309826.png
页面: TopicDeclaration、元素定位类型: css selector、元素定位值: body > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(3) > table:nth-child(1) > tbody:nth-child(2) > tr:nth-child(1) > td:nth-child(2) > div:nth-child(1) > span:nth-child(1)、元素类型: getText、元素值: 、预期结果: 自动化
获取到的文本信息为:自动化-议题申报测试005
** 检查点 ** 获取到的文本信息为:自动化-议题申报测试005 ----> 通过
picture imgs/20250610195816507662.png
PASS
[ suite teardown ] cases\展厅巡检\03无纸化\
suite teardown fail | [WinError 2] 系统找不到指定的文件。
Traceback:
File "C:\PycharmData\ubains-module-test\预定系统\cases\展厅巡检\03无纸化\__st__.py", line 45, in suite_teardown
app_quit(device_ip1)
File "C:\PycharmData\ubains-module-test\预定系统\Base\app_base.py", line 903, in app_quit
subprocess.run(['adb', 'disconnect', device_address])
File "C:\Users\EDY\AppData\Local\Programs\Python\Python310\lib\subprocess.py", line 503, in run
with Popen(*popenargs, **kwargs) as process:
File "C:\Users\EDY\AppData\Local\Programs\Python\Python310\lib\subprocess.py", line 971, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "C:\Users\EDY\AppData\Local\Programs\Python\Python310\lib\subprocess.py", line 1440, in _execute_child
hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
FileNotFoundError: [WinError 2] 系统找不到指定的文件。
[ suite teardown ] cases\项目定制\兰州中石化项目25-05-24\代办事宜\
[ suite teardown ] cases\
清除浏览器
========= 测试结束 : 20250610_195835 =========
========= 测试结束 : 20250611_115340 =========
耗时 : 71.938
耗时 : 85.115
预备执行用例数量 : 5
预备执行用例数量 : 1
实际执行用例数量 : 5
实际执行用例数量 : 1
通过 : 5
通过 : 1
失败 : 0
......@@ -21533,7 +21508,7 @@ picture imgs/20250610195816507662.png
套件初始化失败 : 0
套件清除 失败 : 0
套件清除 失败 : 1
用例初始化失败 : 0
......
......@@ -11,7 +11,7 @@
== cases\AI创会\AI创会.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\AI创会\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\AI创会\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: AI创会
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -57,7 +57,7 @@ XLSX文件已读取
== cases\会控-SMC\SMC会控.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会控-SMC\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会控-SMC\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会控-SMC
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -395,7 +395,7 @@ XLSX文件已读取
== cases\会控-腾讯会议\腾讯会控.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会控-腾讯会议\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会控-腾讯会议\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会控-腾讯会议
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -774,7 +774,7 @@ CSV文件已读取
== cases\会议修改\会议修改.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会议修改\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会议修改\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议修改
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -1577,7 +1577,7 @@ XLSX文件已读取
== cases\会议创建\会议创建.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会议创建\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会议创建\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议创建
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -2589,7 +2589,7 @@ XLSX文件已读取
== cases\会议历史记录\会议历史记录.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会议历史记录\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会议历史记录\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议历史记录
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -2772,7 +2772,7 @@ XLSX文件成功打开
{
"page": "HistoricalRecords",
"locator_type": "XPATH",
"locator_value": "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]",
"locator_value": "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]",
"element_type": "click",
"element_value": "",
"expented_result": ""
......@@ -2787,7 +2787,7 @@ XLSX文件成功打开
}
]
}
行 24 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试002', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 24 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试002', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 24 的功能类别: 工商银行项目-25-04-01
跳过行 24,功能类别不匹配: 工商银行项目-25-04-01 != 标准版
行 25 的 JSON 数据: {
......@@ -2820,7 +2820,7 @@ XLSX文件成功打开
{
"page": "HistoricalRecords",
"locator_type": "XPATH",
"locator_value": "//i[@class='el-collapse-item__arrow el-icon-arrow-right is-active']",
"locator_value": "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]",
"element_type": "click",
"element_value": "",
"expented_result": ""
......@@ -2843,7 +2843,7 @@ XLSX文件成功打开
}
]
}
行 25 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试003', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right is-active']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '深圳市'}]}
行 25 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试003', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '深圳市'}]}
行 25 的功能类别: 工商银行项目-25-04-01
跳过行 25,功能类别不匹配: 工商银行项目-25-04-01 != 标准版
行 26 的 JSON 数据: {
......@@ -2876,7 +2876,7 @@ XLSX文件成功打开
{
"page": "HistoricalRecords",
"locator_type": "XPATH",
"locator_value": "//i[@class='el-collapse-item__arrow el-icon-arrow-right is-active']",
"locator_value": "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]",
"element_type": "click",
"element_value": "",
"expented_result": ""
......@@ -2891,7 +2891,7 @@ XLSX文件成功打开
}
]
}
行 26 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试004', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'el-select')]//div[contains(@class,'el-input el-input--suffix')]//input[contains(@placeholder,'请选择')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right is-active']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[6]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '深圳市'}]}
行 26 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试004', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'el-select')]//div[contains(@class,'el-input el-input--suffix')]//input[contains(@placeholder,'请选择')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[6]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '深圳市'}]}
行 26 的功能类别: 工商银行项目-25-04-01
跳过行 26,功能类别不匹配: 工商银行项目-25-04-01 != 标准版
行 27 的 JSON 数据: {
......@@ -2964,7 +2964,7 @@ XLSX文件成功打开
{
"page": "HistoricalRecords",
"locator_type": "XPATH",
"locator_value": "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]",
"locator_value": "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]",
"element_type": "click",
"element_value": "",
"expented_result": ""
......@@ -2979,7 +2979,7 @@ XLSX文件成功打开
}
]
}
行 27 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试005', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 27 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试005', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 27 的功能类别: 工商银行项目-25-04-01
跳过行 27,功能类别不匹配: 工商银行项目-25-04-01 != 标准版
行 28 的 JSON 数据: {
......@@ -3052,7 +3052,7 @@ XLSX文件成功打开
{
"page": "HistoricalRecords",
"locator_type": "XPATH",
"locator_value": "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]",
"locator_value": "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]",
"element_type": "click",
"element_value": "",
"expented_result": ""
......@@ -3067,7 +3067,7 @@ XLSX文件成功打开
}
]
}
行 28 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试006', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[@class='el-select']//input[@placeholder='请选择']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 28 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试006', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[@class='el-select']//input[@placeholder='请选择']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 28 的功能类别: 工商银行项目-25-04-01
跳过行 28,功能类别不匹配: 工商银行项目-25-04-01 != 标准版
行 29 的 JSON 数据: {
......@@ -3116,7 +3116,7 @@ XLSX文件成功打开
{
"page": "HistoricalRecords",
"locator_type": "XPATH",
"locator_value": "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]",
"locator_value": "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]",
"element_type": "click",
"element_value": "",
"expented_result": ""
......@@ -3131,7 +3131,7 @@ XLSX文件成功打开
}
]
}
行 29 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试007', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[@class='el-select']//input[@placeholder='请选择']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 29 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试007', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[@class='el-select']//input[@placeholder='请选择']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 29 的功能类别: 工商银行项目-25-04-01
跳过行 29,功能类别不匹配: 工商银行项目-25-04-01 != 标准版
行 30 的 JSON 数据: {
......@@ -3220,7 +3220,7 @@ XLSX文件成功打开
{
"page": "HistoricalRecords",
"locator_type": "XPATH",
"locator_value": "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]",
"locator_value": "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]",
"element_type": "click",
"element_value": "",
"expented_result": ""
......@@ -3235,7 +3235,7 @@ XLSX文件成功打开
}
]
}
行 30 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试008', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[@class='el-select']//input[@placeholder='请选择']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 30 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试008', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[@class='el-select']//input[@placeholder='请选择']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 30 的功能类别: 工商银行项目-25-04-01
跳过行 30,功能类别不匹配: 工商银行项目-25-04-01 != 标准版
行 31 的 JSON 数据: None
......@@ -3654,7 +3654,7 @@ CSV文件已读取
== cases\会议审批\会议审批.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会议审批\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会议审批\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议审批
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -4238,7 +4238,7 @@ CSV文件已读取
== cases\会议室列表\会议室列表功能测试.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会议室列表\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会议室列表\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议室列表
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -4441,7 +4441,7 @@ XLSX文件已读取
== cases\会议室管理\会议室管理.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会议室管理\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会议室管理\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议室管理
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -5179,7 +5179,7 @@ CSV文件已读取
== cases\会议模板\会议模板.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会议模板\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会议模板\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议模板
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -5544,7 +5544,7 @@ CSV文件已读取
== cases\信息发布\信息发布.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\信息发布\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\信息发布\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 信息发布
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -5904,7 +5904,7 @@ XLSX文件已读取
== cases\信息统计\信息统计.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\信息统计\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\信息统计\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 信息统计
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -6270,7 +6270,7 @@ XLSX文件已读取
== cases\全局配置\全局配置.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\全局配置\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\全局配置\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 全局配置
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -6618,7 +6618,7 @@ XLSX文件已读取
== cases\安卓信息\安卓信息.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\安卓信息\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\安卓信息\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 安卓信息
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '截图二', '备注']
......@@ -6806,8 +6806,6 @@ CSV文件已读取
== cases\展厅巡检\03无纸化\01无纸化2.0同屏巡检.py
** no cases in this file , skip it.
== cases\展厅巡检\03无纸化\02无纸化1.0.py
......@@ -6893,7 +6891,7 @@ CSV文件已读取
== cases\授权码管理\授权码管理.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\授权码管理\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\授权码管理\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 授权码管理
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -7225,7 +7223,7 @@ XLSX文件已读取
== cases\登录模块\新-账号密码登录测试.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\登录模块\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\登录模块\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 登录页面
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -7429,7 +7427,7 @@ CSV文件已读取
== cases\系统管理\系统设置.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\系统管理\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\系统管理\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 系统管理
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -7774,7 +7772,7 @@ XLSX文件已读取
== cases\账号管理\账号管理.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\账号管理\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\账号管理\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 账号管理
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -8708,7 +8706,7 @@ CSV文件已读取
== cases\项目定制\兰州中石化项目25-05-24\代办事宜\代办事宜.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 代办事宜
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -8817,12 +8815,20 @@ XLSX文件成功打开
"element_value": "",
"expented_result": ""
},
{
"page": "TopicDeclaration",
"locator_type": "XPATH",
"locator_value": "//p[@class='el-message__content']",
"element_type": "getTips",
"element_value": "",
"expented_result": "审批成功"
},
{
"page": "TopicDeclaration",
"locator_type": "XPATH",
"locator_value": "",
"element_type": "login",
"element_value": "",
"element_value": ["test@user1","Ubains@1357"],
"expented_result": ""
},
{
......@@ -8843,7 +8849,7 @@ XLSX文件成功打开
}
]
}
行 7 的 JSON 数据解析成功: {'name': '代办事宜004', 'para': [{'page': 'AgencyMatters', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]', 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': "//button[@id='create-meeting-submit-button']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': '', 'element_type': 'login', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]', 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'cell')][contains(text(),'范公司主管领导')]", 'element_type': 'getText', 'element_value': '', 'expented_result': '范公司主管领导'}]}
行 7 的 JSON 数据解析成功: {'name': '代办事宜004', 'para': [{'page': 'AgencyMatters', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]', 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': "//button[@id='create-meeting-submit-button']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': "//p[@class='el-message__content']", 'element_type': 'getTips', 'element_value': '', 'expented_result': '审批成功'}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': '', 'element_type': 'login', 'element_value': ['test@user1', 'Ubains@1357'], 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]', 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'cell')][contains(text(),'范公司主管领导')]", 'element_type': 'getText', 'element_value': '', 'expented_result': '范公司主管领导'}]}
行 7 的功能类别: 兰州中石化项目25-05-24
行 7 的 JSON 数据已添加到 ddt_cases
行 8 的 JSON 数据: {
......@@ -8864,6 +8870,14 @@ XLSX文件成功打开
"element_value": "",
"expented_result": ""
},
{
"page": "TopicDeclaration",
"locator_type": "XPATH",
"locator_value": "//p[@class='el-message__content']",
"element_type": "getTips",
"element_value": "",
"expented_result": ""
},
{
"page": "TopicDeclaration",
"locator_type": "XPATH",
......@@ -8890,7 +8904,7 @@ XLSX文件成功打开
}
]
}
行 8 的 JSON 数据解析成功: {'name': '代办事宜005', 'para': [{'page': 'AgencyMatters', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]', 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': "//button[@id='create-meeting-submit-button']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'content')]//div[2]//div[2]//div[1]//div[1]//div[2]//input[1]", 'element_type': 'input', 'element_value': '', 'expented_result': '自动化'}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[2]/div[2]/div[1]/button[1]/span[1]', 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'CSS_SELECTOR', 'locator_value': 'body > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(3) > table:nth-child(1) > tbody:nth-child(2) > tr:nth-child(1) > td:nth-child(2) > div:nth-child(1) > span:nth-child(1)', 'element_type': 'getText', 'element_value': '', 'expented_result': '自动化'}]}
行 8 的 JSON 数据解析成功: {'name': '代办事宜005', 'para': [{'page': 'AgencyMatters', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]', 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': "//button[@id='create-meeting-submit-button']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': "//p[@class='el-message__content']", 'element_type': 'getTips', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'content')]//div[2]//div[2]//div[1]//div[1]//div[2]//input[1]", 'element_type': 'input', 'element_value': '', 'expented_result': '自动化'}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[2]/div[2]/div[1]/button[1]/span[1]', 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'CSS_SELECTOR', 'locator_value': 'body > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(3) > table:nth-child(1) > tbody:nth-child(2) > tr:nth-child(1) > td:nth-child(2) > div:nth-child(1) > span:nth-child(1)', 'element_type': 'getText', 'element_value': '', 'expented_result': '自动化'}]}
行 8 的功能类别: 兰州中石化项目25-05-24
行 8 的 JSON 数据已添加到 ddt_cases
行 9 的 JSON 数据: None
......@@ -9149,12 +9163,14 @@ XLSX文件成功打开
跳过行 135,JSON 数据为空
XLSX文件已读取
** no cases in this file , skip it.
== cases\项目定制\兰州中石化项目25-05-24\会议申报\__st__.py
== cases\项目定制\兰州中石化项目25-05-24\会议申报\会议申报功能测试.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议申报
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -13379,7 +13395,7 @@ XLSX文件已读取
== cases\项目定制\兰州中石化项目25-05-24\角色权限管理\角色权限管理.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 角色权限管理
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -13852,7 +13868,7 @@ XLSX文件已读取
== cases\项目定制\兰州中石化项目25-05-24\议题申报\议题申报.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 议题申报
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -17809,7 +17825,7 @@ XLSX文件已读取
== cases\项目定制\工商银行项目24-11-20\会议修改\车牌功能测试.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议修改
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -18612,7 +18628,7 @@ XLSX文件已读取
== cases\项目定制\工商银行项目24-11-20\会议创建\车牌功能测试.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议创建
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -19624,7 +19640,7 @@ XLSX文件已读取
== cases\项目定制\工商银行项目24-11-20\会议室管理\会议室同步.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议室管理
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -20290,7 +20306,7 @@ XLSX文件已读取
== cases\项目定制\工商银行项目24-11-20\用户管理\OA组织架构同步.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 账号管理
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -21147,7 +21163,7 @@ XLSX文件已读取
== cases\项目定制\长安大学项目25-03-17\会议审批\会议审批.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\长安大学测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\长安大学测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议审批
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -21367,143 +21383,70 @@ XLSX文件已读取
=== [ 执行测试用例 ] ===
预备执行用例数量 : 5
预备执行用例数量 : 1
========= 测试开始 : 20250610_194802 =========
========= 测试开始 : 20250611_111911 =========
>>> cases\
>>> cases\项目定制\兰州中石化项目25-05-24\代办事宜\
[ suite setup ] cases\项目定制\兰州中石化项目25-05-24\代办事宜\
>>> cases\展厅巡检\03无纸化\
-- 第 1 步 -- 初始化浏览器
[ suite setup ] cases\展厅巡检\03无纸化\
'----------' 正在初始化浏览器 '----------'
'----------' 浏览器初始化完成 '----------'
输入用户名:test@user2
输入密码:Ubains@1357
输入验证码:csba
点击登录按钮
点击【代办事宜】按钮
-- 第 1 步 -- 初始化设备1的adb连接
'----------' 正在初始化ADB连接 '----------'
suite setup fail | [WinError 2] 系统找不到指定的文件。
Traceback:
File "C:\PycharmData\ubains-module-test\预定系统\cases\展厅巡检\03无纸化\__st__.py", line 25, in suite_setup
CHECK_POINT("设备1的adb连接初始化检测", app_init(device_ip1) == True)
File "C:\PycharmData\ubains-module-test\预定系统\Base\app_base.py", line 771, in app_init
subprocess.run(['adb', 'connect', device_address], check=True)
File "C:\Users\EDY\AppData\Local\Programs\Python\Python310\lib\subprocess.py", line 503, in run
with Popen(*popenargs, **kwargs) as process:
File "C:\Users\EDY\AppData\Local\Programs\Python\Python310\lib\subprocess.py", line 971, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "C:\Users\EDY\AppData\Local\Programs\Python\Python310\lib\subprocess.py", line 1440, in _execute_child
hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
FileNotFoundError: [WinError 2] 系统找不到指定的文件。
>>> cases\项目定制\兰州中石化项目25-05-24\代办事宜\代办事宜.py
* 代办事宜001 - 2025-06-10 19:48:09
[ case execution steps ]
页面: AgencyMatters、元素定位类型: xpath、元素定位值: //div[@class='content']//div[1]//div[2]//div[1]//div[1]//div[2]//input[1]、元素类型: input、元素值: 自动化、预期结果:
picture imgs/20250610194816304368.png
页面: AgencyMatters、元素定位类型: xpath、元素定位值: //body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[1]/button[1]、元素类型: click、元素值: 、预期结果:
picture imgs/20250610194818619813.png
页面: AgencyMatters、元素定位类型: css selector、元素定位值: body > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(3) > table:nth-child(1) > tbody:nth-child(2) > tr:nth-child(1) > td:nth-child(2) > div:nth-child(1) > span:nth-child(1)、元素类型: getText、元素值: 、预期结果: 自动化
获取到的文本信息为:自动化-议题申报测试005
** 检查点 ** 获取到的文本信息为:自动化-议题申报测试005 ----> 通过
picture imgs/20250610194818817806.png
PASS
* 代办事宜002 - 2025-06-10 19:48:18
[ case execution steps ]
页面: AgencyMatters、元素定位类型: xpath、元素定位值: //div[@class='content']//div[1]//div[2]//div[1]//div[1]//div[2]//input[1]、元素类型: input、元素值: 自动化、预期结果:
picture imgs/20250610194821336657.png
页面: AgencyMatters、元素定位类型: xpath、元素定位值: //body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[1]/button[1]、元素类型: click、元素值: 、预期结果:
picture imgs/20250610194823574591.png
页面: AgencyMatters、元素定位类型: css selector、元素定位值: body > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(3) > table:nth-child(1) > tbody:nth-child(2) > tr:nth-child(1) > td:nth-child(2) > div:nth-child(1) > span:nth-child(1)、元素类型: getText、元素值: 、预期结果: 自动化
获取到的文本信息为:自动化-议题申报测试005
** 检查点 ** 获取到的文本信息为:自动化-议题申报测试005 ----> 通过
picture imgs/20250610194823741103.png
PASS
* 代办事宜003 - 2025-06-10 19:48:23
[ case execution steps ]
页面: AgencyMatters、元素定位类型: xpath、元素定位值: //body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]、元素类型: click、元素值: 、预期结果:
picture imgs/20250610194826462447.png
页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //div[contains(@class,'cell')][contains(text(),'陈部门领导')]、元素类型: getText、元素值: 、预期结果: 陈部门领导
获取到的文本信息为:陈部门领导
** 检查点 ** 获取到的文本信息为:陈部门领导 ----> 通过
picture imgs/20250610194826651822.png
PASS
* 代办事宜004 - 2025-06-10 19:48:26
[ case execution steps ]
页面: AgencyMatters、元素定位类型: xpath、元素定位值: //body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]、元素类型: click、元素值: 、预期结果:
picture imgs/20250610194829342155.png
页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //button[@id='create-meeting-submit-button']、元素类型: click、元素值: 、预期结果:
picture imgs/20250610194831583610.png
页面: TopicDeclaration、元素定位类型: xpath、元素定位值: 、元素类型: login、元素值: 、预期结果:
输入用户名:test@user1
输入密码:Ubains@1357
输入验证码:csba
点击登录按钮
页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]、元素类型: click、元素值: 、预期结果:
picture imgs/20250610194838427059.png
页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //div[contains(@class,'cell')][contains(text(),'范公司主管领导')]、元素类型: getText、元素值: 、预期结果: 范公司主管领导
获取到的文本信息为:范公司主管领导
** 检查点 ** 获取到的文本信息为:范公司主管领导 ----> 通过
picture imgs/20250610194838617856.png
PASS
* 代办事宜005 - 2025-06-10 19:48:38
[ case execution steps ]
页面: AgencyMatters、元素定位类型: xpath、元素定位值: //body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]、元素类型: click、元素值: 、预期结果:
picture imgs/20250610194841383828.png
页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //button[@id='create-meeting-submit-button']、元素类型: click、元素值: 、预期结果:
picture imgs/20250610194843608797.png
页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //div[contains(@class,'content')]//div[2]//div[2]//div[1]//div[1]//div[2]//input[1]、元素类型: input、元素值: 、预期结果: 自动化
picture imgs/20250610194845861002.png
页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[2]/div[2]/div[1]/button[1]/span[1]、元素类型: click、元素值: 、预期结果:
picture imgs/20250610194848084560.png
页面: TopicDeclaration、元素定位类型: css selector、元素定位值: body > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(3) > table:nth-child(1) > tbody:nth-child(2) > tr:nth-child(1) > td:nth-child(2) > div:nth-child(1) > span:nth-child(1)、元素类型: getText、元素值: 、预期结果: 自动化
获取到的文本信息为:自动化-议题申报测试005
** 检查点 ** 获取到的文本信息为:自动化-议题申报测试005 ----> 通过
picture imgs/20250610194848271888.png
PASS
[ suite teardown ] cases\项目定制\兰州中石化项目25-05-24\代办事宜\
[ suite teardown ] cases\
清除浏览器
suite teardown fail | 'NoneType' object has no attribute 'quit'
Traceback:
File "C:\PycharmData\ubains-module-test\预定系统\cases\__st__.py", line 24, in suite_teardown
browser_quit()
File "C:\PycharmData\ubains-module-test\预定系统\Base\base.py", line 750, in browser_quit
wd.quit()
AttributeError: 'NoneType' object has no attribute 'quit'
========= 测试结束 : 20250610_194906 =========
========= 测试结束 : 20250611_111911 =========
耗时 : 64.119
耗时 : 0.044
预备执行用例数量 : 5
预备执行用例数量 : 1
实际执行用例数量 : 5
实际执行用例数量 : 0
通过 : 5
通过 : 0
失败 : 0
异常 : 0
套件初始化失败 : 0
套件初始化失败 : 1
套件清除 失败 : 0
套件清除 失败 : 1
用例初始化失败 : 0
......
......@@ -11,7 +11,7 @@
== cases\AI创会\AI创会.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\AI创会\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\AI创会\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: AI创会
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -57,7 +57,7 @@ XLSX文件已读取
== cases\会控-SMC\SMC会控.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会控-SMC\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会控-SMC\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会控-SMC
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -395,7 +395,7 @@ XLSX文件已读取
== cases\会控-腾讯会议\腾讯会控.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会控-腾讯会议\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会控-腾讯会议\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会控-腾讯会议
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -774,7 +774,7 @@ CSV文件已读取
== cases\会议修改\会议修改.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会议修改\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会议修改\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议修改
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -1577,7 +1577,7 @@ XLSX文件已读取
== cases\会议创建\会议创建.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会议创建\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会议创建\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议创建
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -2589,7 +2589,7 @@ XLSX文件已读取
== cases\会议历史记录\会议历史记录.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会议历史记录\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会议历史记录\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议历史记录
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -2772,7 +2772,7 @@ XLSX文件成功打开
{
"page": "HistoricalRecords",
"locator_type": "XPATH",
"locator_value": "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]",
"locator_value": "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]",
"element_type": "click",
"element_value": "",
"expented_result": ""
......@@ -2787,7 +2787,7 @@ XLSX文件成功打开
}
]
}
行 24 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试002', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 24 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试002', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 24 的功能类别: 工商银行项目-25-04-01
跳过行 24,功能类别不匹配: 工商银行项目-25-04-01 != 标准版
行 25 的 JSON 数据: {
......@@ -2820,7 +2820,7 @@ XLSX文件成功打开
{
"page": "HistoricalRecords",
"locator_type": "XPATH",
"locator_value": "//i[@class='el-collapse-item__arrow el-icon-arrow-right is-active']",
"locator_value": "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]",
"element_type": "click",
"element_value": "",
"expented_result": ""
......@@ -2843,7 +2843,7 @@ XLSX文件成功打开
}
]
}
行 25 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试003', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right is-active']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '深圳市'}]}
行 25 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试003', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '深圳市'}]}
行 25 的功能类别: 工商银行项目-25-04-01
跳过行 25,功能类别不匹配: 工商银行项目-25-04-01 != 标准版
行 26 的 JSON 数据: {
......@@ -2876,7 +2876,7 @@ XLSX文件成功打开
{
"page": "HistoricalRecords",
"locator_type": "XPATH",
"locator_value": "//i[@class='el-collapse-item__arrow el-icon-arrow-right is-active']",
"locator_value": "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]",
"element_type": "click",
"element_value": "",
"expented_result": ""
......@@ -2891,7 +2891,7 @@ XLSX文件成功打开
}
]
}
行 26 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试004', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'el-select')]//div[contains(@class,'el-input el-input--suffix')]//input[contains(@placeholder,'请选择')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right is-active']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[6]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '深圳市'}]}
行 26 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试004', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'el-select')]//div[contains(@class,'el-input el-input--suffix')]//input[contains(@placeholder,'请选择')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[6]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '深圳市'}]}
行 26 的功能类别: 工商银行项目-25-04-01
跳过行 26,功能类别不匹配: 工商银行项目-25-04-01 != 标准版
行 27 的 JSON 数据: {
......@@ -2964,7 +2964,7 @@ XLSX文件成功打开
{
"page": "HistoricalRecords",
"locator_type": "XPATH",
"locator_value": "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]",
"locator_value": "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]",
"element_type": "click",
"element_value": "",
"expented_result": ""
......@@ -2979,7 +2979,7 @@ XLSX文件成功打开
}
]
}
行 27 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试005', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 27 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试005', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 27 的功能类别: 工商银行项目-25-04-01
跳过行 27,功能类别不匹配: 工商银行项目-25-04-01 != 标准版
行 28 的 JSON 数据: {
......@@ -3052,7 +3052,7 @@ XLSX文件成功打开
{
"page": "HistoricalRecords",
"locator_type": "XPATH",
"locator_value": "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]",
"locator_value": "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]",
"element_type": "click",
"element_value": "",
"expented_result": ""
......@@ -3067,7 +3067,7 @@ XLSX文件成功打开
}
]
}
行 28 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试006', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[@class='el-select']//input[@placeholder='请选择']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 28 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试006', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[@class='el-select']//input[@placeholder='请选择']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 28 的功能类别: 工商银行项目-25-04-01
跳过行 28,功能类别不匹配: 工商银行项目-25-04-01 != 标准版
行 29 的 JSON 数据: {
......@@ -3116,7 +3116,7 @@ XLSX文件成功打开
{
"page": "HistoricalRecords",
"locator_type": "XPATH",
"locator_value": "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]",
"locator_value": "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]",
"element_type": "click",
"element_value": "",
"expented_result": ""
......@@ -3131,7 +3131,7 @@ XLSX文件成功打开
}
]
}
行 29 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试007', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[@class='el-select']//input[@placeholder='请选择']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 29 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试007', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[@class='el-select']//input[@placeholder='请选择']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 29 的功能类别: 工商银行项目-25-04-01
跳过行 29,功能类别不匹配: 工商银行项目-25-04-01 != 标准版
行 30 的 JSON 数据: {
......@@ -3220,7 +3220,7 @@ XLSX文件成功打开
{
"page": "HistoricalRecords",
"locator_type": "XPATH",
"locator_value": "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]",
"locator_value": "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]",
"element_type": "click",
"element_value": "",
"expented_result": ""
......@@ -3235,7 +3235,7 @@ XLSX文件成功打开
}
]
}
行 30 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试008', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[@class='el-select']//input[@placeholder='请选择']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[contains(@class,'el-collapse-item__arrow el-icon-arrow-right is-active')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 30 的 JSON 数据解析成功: {'name': '工商银行历史记录导出测试008', 'para': [{'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//i[@class='el-collapse-item__arrow el-icon-arrow-right']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'设置')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[contains(@placeholder,'输入用户名称')]", 'element_type': 'input', 'element_value': '曹洋', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'查询')]", 'element_type': 'click', 'element_value': ' ', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//label[@class='el-checkbox el-tooltip']//span[@class='el-checkbox__inner']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@aria-label,'预订人')]//span[contains(text(),'确定')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[@class='el-select']//input[@placeholder='请选择']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//span[contains(text(),'普通会议')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//input[@aria-expanded='false']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "(//span[@class='el-checkbox__inner'])[1]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'Screen_bottom')]//i[contains(@class,'el-icon-arrow-up')]", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'HistoricalRecords', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[3]/div[1]/div[2]/div[3]/table[1]/tbody[1]/tr[1]/td[3]/div[1]', 'element_type': 'getText', 'element_value': '', 'expented_result': '曹洋'}]}
行 30 的功能类别: 工商银行项目-25-04-01
跳过行 30,功能类别不匹配: 工商银行项目-25-04-01 != 标准版
行 31 的 JSON 数据: None
......@@ -3654,7 +3654,7 @@ CSV文件已读取
== cases\会议审批\会议审批.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会议审批\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会议审批\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议审批
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -4238,7 +4238,7 @@ CSV文件已读取
== cases\会议室列表\会议室列表功能测试.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会议室列表\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会议室列表\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议室列表
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -4441,7 +4441,7 @@ XLSX文件已读取
== cases\会议室管理\会议室管理.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会议室管理\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会议室管理\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议室管理
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -5179,7 +5179,7 @@ CSV文件已读取
== cases\会议模板\会议模板.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\会议模板\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\会议模板\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议模板
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -5544,7 +5544,7 @@ CSV文件已读取
== cases\信息发布\信息发布.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\信息发布\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\信息发布\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 信息发布
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -5904,7 +5904,7 @@ XLSX文件已读取
== cases\信息统计\信息统计.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\信息统计\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\信息统计\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 信息统计
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -6270,7 +6270,7 @@ XLSX文件已读取
== cases\全局配置\全局配置.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\全局配置\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\全局配置\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 全局配置
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -6618,7 +6618,7 @@ XLSX文件已读取
== cases\安卓信息\安卓信息.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\安卓信息\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\安卓信息\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 安卓信息
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '截图二', '备注']
......@@ -6806,8 +6806,6 @@ CSV文件已读取
== cases\展厅巡检\03无纸化\01无纸化2.0同屏巡检.py
** no cases in this file , skip it.
== cases\展厅巡检\03无纸化\02无纸化1.0.py
......@@ -6893,7 +6891,7 @@ CSV文件已读取
== cases\授权码管理\授权码管理.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\授权码管理\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\授权码管理\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 授权码管理
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -7225,7 +7223,7 @@ XLSX文件已读取
== cases\登录模块\新-账号密码登录测试.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\登录模块\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\登录模块\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 登录页面
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -7429,7 +7427,7 @@ CSV文件已读取
== cases\系统管理\系统设置.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\系统管理\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\系统管理\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 系统管理
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -7774,7 +7772,7 @@ XLSX文件已读取
== cases\账号管理\账号管理.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\cases\账号管理\..\..\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\cases\账号管理\..\..\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 账号管理
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -8708,7 +8706,7 @@ CSV文件已读取
== cases\项目定制\兰州中石化项目25-05-24\代办事宜\代办事宜.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 代办事宜
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -8817,12 +8815,20 @@ XLSX文件成功打开
"element_value": "",
"expented_result": ""
},
{
"page": "TopicDeclaration",
"locator_type": "XPATH",
"locator_value": "//p[@class='el-message__content']",
"element_type": "getTips",
"element_value": "",
"expented_result": "审批成功"
},
{
"page": "TopicDeclaration",
"locator_type": "XPATH",
"locator_value": "",
"element_type": "login",
"element_value": "",
"element_value": ["test@user1","Ubains@1357"],
"expented_result": ""
},
{
......@@ -8843,7 +8849,7 @@ XLSX文件成功打开
}
]
}
行 7 的 JSON 数据解析成功: {'name': '代办事宜004', 'para': [{'page': 'AgencyMatters', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]', 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': "//button[@id='create-meeting-submit-button']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': '', 'element_type': 'login', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]', 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'cell')][contains(text(),'范公司主管领导')]", 'element_type': 'getText', 'element_value': '', 'expented_result': '范公司主管领导'}]}
行 7 的 JSON 数据解析成功: {'name': '代办事宜004', 'para': [{'page': 'AgencyMatters', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]', 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': "//button[@id='create-meeting-submit-button']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': "//p[@class='el-message__content']", 'element_type': 'getTips', 'element_value': '', 'expented_result': '审批成功'}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': '', 'element_type': 'login', 'element_value': ['test@user1', 'Ubains@1357'], 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]', 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'cell')][contains(text(),'范公司主管领导')]", 'element_type': 'getText', 'element_value': '', 'expented_result': '范公司主管领导'}]}
行 7 的功能类别: 兰州中石化项目25-05-24
行 7 的 JSON 数据已添加到 ddt_cases
行 8 的 JSON 数据: {
......@@ -8864,6 +8870,14 @@ XLSX文件成功打开
"element_value": "",
"expented_result": ""
},
{
"page": "TopicDeclaration",
"locator_type": "XPATH",
"locator_value": "//p[@class='el-message__content']",
"element_type": "getTips",
"element_value": "",
"expented_result": ""
},
{
"page": "TopicDeclaration",
"locator_type": "XPATH",
......@@ -8890,7 +8904,7 @@ XLSX文件成功打开
}
]
}
行 8 的 JSON 数据解析成功: {'name': '代办事宜005', 'para': [{'page': 'AgencyMatters', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]', 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': "//button[@id='create-meeting-submit-button']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'content')]//div[2]//div[2]//div[1]//div[1]//div[2]//input[1]", 'element_type': 'input', 'element_value': '', 'expented_result': '自动化'}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[2]/div[2]/div[1]/button[1]/span[1]', 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'CSS_SELECTOR', 'locator_value': 'body > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(3) > table:nth-child(1) > tbody:nth-child(2) > tr:nth-child(1) > td:nth-child(2) > div:nth-child(1) > span:nth-child(1)', 'element_type': 'getText', 'element_value': '', 'expented_result': '自动化'}]}
行 8 的 JSON 数据解析成功: {'name': '代办事宜005', 'para': [{'page': 'AgencyMatters', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]', 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': "//button[@id='create-meeting-submit-button']", 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': "//p[@class='el-message__content']", 'element_type': 'getTips', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': "//div[contains(@class,'content')]//div[2]//div[2]//div[1]//div[1]//div[2]//input[1]", 'element_type': 'input', 'element_value': '', 'expented_result': '自动化'}, {'page': 'TopicDeclaration', 'locator_type': 'XPATH', 'locator_value': '//body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[2]/div[2]/div[1]/button[1]/span[1]', 'element_type': 'click', 'element_value': '', 'expented_result': ''}, {'page': 'TopicDeclaration', 'locator_type': 'CSS_SELECTOR', 'locator_value': 'body > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(3) > table:nth-child(1) > tbody:nth-child(2) > tr:nth-child(1) > td:nth-child(2) > div:nth-child(1) > span:nth-child(1)', 'element_type': 'getText', 'element_value': '', 'expented_result': '自动化'}]}
行 8 的功能类别: 兰州中石化项目25-05-24
行 8 的 JSON 数据已添加到 ddt_cases
行 9 的 JSON 数据: None
......@@ -9149,12 +9163,14 @@ XLSX文件成功打开
跳过行 135,JSON 数据为空
XLSX文件已读取
** no cases in this file , skip it.
== cases\项目定制\兰州中石化项目25-05-24\会议申报\__st__.py
== cases\项目定制\兰州中石化项目25-05-24\会议申报\会议申报功能测试.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议申报
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -13379,7 +13395,7 @@ XLSX文件已读取
== cases\项目定制\兰州中石化项目25-05-24\角色权限管理\角色权限管理.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 角色权限管理
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -13852,7 +13868,7 @@ XLSX文件已读取
== cases\项目定制\兰州中石化项目25-05-24\议题申报\议题申报.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\兰州中石化项目测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 议题申报
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -17809,7 +17825,7 @@ XLSX文件已读取
== cases\项目定制\工商银行项目24-11-20\会议修改\车牌功能测试.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议修改
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -18612,7 +18628,7 @@ XLSX文件已读取
== cases\项目定制\工商银行项目24-11-20\会议创建\车牌功能测试.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议创建
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -19624,7 +19640,7 @@ XLSX文件已读取
== cases\项目定制\工商银行项目24-11-20\会议室管理\会议室同步.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议室管理
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -20290,7 +20306,7 @@ XLSX文件已读取
== cases\项目定制\工商银行项目24-11-20\用户管理\OA组织架构同步.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\会议预定测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 账号管理
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -21147,7 +21163,7 @@ XLSX文件已读取
== cases\项目定制\长安大学项目25-03-17\会议审批\会议审批.py
尝试打开文件路径: E:\GithubData\自动化\ubains-module-test\预定系统\测试数据\长安大学测试用例.xlsx
尝试打开文件路径: C:\PycharmData\ubains-module-test\预定系统\测试数据\长安大学测试用例.xlsx
XLSX文件成功打开
成功选择工作表: 会议审批
表头列名: ['序列号', '功能模块', '功能类别', '用例编号', '功能描述', '用例等级', '功能编号', '用例名称', '预置条件', '操作步骤', 'JSON', '预期结果', '测试结果', '测试频次', '日志截图', '备注']
......@@ -21367,229 +21383,88 @@ XLSX文件已读取
=== [ 执行测试用例 ] ===
预备执行用例数量 : 5
预备执行用例数量 : 1
========= 测试开始 : 20250610_194500 =========
========= 测试开始 : 20250611_105030 =========
>>> cases\
>>> cases\项目定制\兰州中石化项目25-05-24\代办事宜\
>>> cases\展厅巡检\03无纸化\
[ suite setup ] cases\项目定制\兰州中石化项目25-05-24\代办事宜\
[ suite setup ] cases\展厅巡检\03无纸化\
-- 第 1 步 -- 初始化浏览器
-- 第 1 步 -- 初始化设备1的adb连接
'----------' 正在初始化ADB连接 '----------'
尝试连接到设备: 192.168.5.156:5555
设备 192.168.5.156:5555 已连接并可用
** 检查点 ** 设备1的adb连接初始化检测 ----> 通过
-- 第 2 步 -- 初始化设备2的adb连接
'----------' 正在初始化ADB连接 '----------'
尝试连接到设备: 192.168.5.157:5555
设备 192.168.5.157:5555 已连接并可用
** 检查点 ** 设备2的adb连接初始化检测 ----> 通过
-- 第 3 步 -- 初始化设备3的adb连接
'----------' 正在初始化ADB连接 '----------'
尝试连接到设备: 192.168.5.158:5555
设备 192.168.5.158:5555 已连接并可用
** 检查点 ** 设备3的adb连接初始化检测 ----> 通过
'----------' 正在初始化浏览器 '----------'
'----------' 浏览器初始化完成 '----------'
输入用户名:test@user2
输入密码:Ubains@1357
输入验证码:csba
点击登录按钮
点击【代办事宜】按钮
>>> cases\项目定制\兰州中石化项目25-05-24\代办事宜\代办事宜.py
>>> cases\展厅巡检\03无纸化\01无纸化2.0同屏巡检.py
* 代办事宜001 - 2025-06-10 19:45:09
* SameScreenShare - 2025-06-11 10:50:33
[ case execution steps ]
页面: AgencyMatters、元素定位类型: xpath、元素定位值: //div[@class='content']//div[1]//div[2]//div[1]//div[1]//div[2]//input[1]、元素类型: input、元素值: 自动化、预期结果:
picture imgs/20250610194511706466.png
页面: AgencyMatters、元素定位类型: xpath、元素定位值: //body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[1]/button[1]、元素类型: click、元素值: 、预期结果:
picture imgs/20250610194513954404.png
页面: AgencyMatters、元素定位类型: css selector、元素定位值: body > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(3) > table:nth-child(1) > tbody:nth-child(2) > tr:nth-child(1) > td:nth-child(2) > div:nth-child(1) > span:nth-child(1)、元素类型: getText、元素值: 、预期结果: 自动化
获取到的文本信息为:自动化-议题申报测试005
PASS
** 检查点 ** 获取到的文本信息为:自动化-议题申报测试005 ----> 通过
[ suite teardown ] cases\展厅巡检\03无纸化\
ADB 连接已断开: 192.168.5.156:5555
ADB 连接已断开: 192.168.5.157:5555
ADB 连接已断开: 192.168.5.158:5555
清除浏览器
picture imgs/20250610194514134977.png
PASS
[ suite teardown ] cases\
清除浏览器
* 代办事宜002 - 2025-06-10 19:45:14
[ case execution steps ]
页面: AgencyMatters、元素定位类型: xpath、元素定位值: //div[@class='content']//div[1]//div[2]//div[1]//div[1]//div[2]//input[1]、元素类型: input、元素值: 自动化、预期结果:
picture imgs/20250610194516459277.png
页面: AgencyMatters、元素定位类型: xpath、元素定位值: //body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[1]/button[1]、元素类型: click、元素值: 、预期结果:
picture imgs/20250610194518704862.png
页面: AgencyMatters、元素定位类型: css selector、元素定位值: body > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > div:nth-child(1) > div:nth-child(3) > table:nth-child(1) > tbody:nth-child(2) > tr:nth-child(1) > td:nth-child(2) > div:nth-child(1) > span:nth-child(1)、元素类型: getText、元素值: 、预期结果: 自动化
获取到的文本信息为:自动化-议题申报测试005
========= 测试结束 : 20250611_105059 =========
** 检查点 ** 获取到的文本信息为:自动化-议题申报测试005 ----> 通过
picture imgs/20250610194518893322.png
PASS
耗时 : 29.430 秒
* 代办事宜003 - 2025-06-10 19:45:19
[ case execution steps ]
页面: AgencyMatters、元素定位类型: xpath、元素定位值: //body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]、元素类型: click、元素值: 、预期结果:
picture imgs/20250610194521174758.png
页面: TopicDeclaration、元素定位类型: xpath、元素定位值: //div[contains(@class,'cell')][contains(text(),'陈部门领导')]、元素类型: getText、元素值: 、预期结果: 陈部门领导
获取到的文本信息为:陈部门领导
预备执行用例数量 : 1
** 检查点 ** 获取到的文本信息为:陈部门领导 ----> 通过
实际执行用例数量 : 1
picture imgs/20250610194521397820.png
PASS
通过 : 1
* 代办事宜004 - 2025-06-10 19:45:21
失败 : 0
[ case execution steps ]
页面: AgencyMatters、元素定位类型: xpath、元素定位值: //body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]、元素类型: click、元素值: 、预期结果:
ABORT Message: element click intercepted: Element <span>...</span> is not clickable at point (1742, 255). Other element would receive the click: <div data-v-5f2646ec="" class="el-dialog__wrapper" style="z-index: 2001;">...</div>
(Session info: chrome=137.0.7151.41)
Stacktrace:
GetHandleVerifier [0x0x7ff6548a91f5+2853845]
GetHandleVerifier [0x0x7ff654603ac0+79008]
(No symbol) [0x0x7ff6543c9bda]
(No symbol) [0x0x7ff6544280e9]
(No symbol) [0x0x7ff654425a8b]
(No symbol) [0x0x7ff654422ad1]
(No symbol) [0x0x7ff6544219d1]
(No symbol) [0x0x7ff654413004]
(No symbol) [0x0x7ff6544484ba]
(No symbol) [0x0x7ff6544128b6]
(No symbol) [0x0x7ff6544486d0]
(No symbol) [0x0x7ff6544708f5]
(No symbol) [0x0x7ff654448293]
(No symbol) [0x0x7ff654411061]
(No symbol) [0x0x7ff654411df3]
GetHandleVerifier [0x0x7ff6548d410d+3029741]
GetHandleVerifier [0x0x7ff6548ce52d+3006221]
GetHandleVerifier [0x0x7ff6548ed5b2+3133330]
GetHandleVerifier [0x0x7ff65461d98e+185198]
GetHandleVerifier [0x0x7ff654624edf+215231]
GetHandleVerifier [0x0x7ff65460c324+113924]
GetHandleVerifier [0x0x7ff65460c4d9+114361]
GetHandleVerifier [0x0x7ff6545f3208+11240]
BaseThreadInitThunk [0x0x7ffb2264e8d7+23]
RtlUserThreadStart [0x0x7ffb2449c5dc+44]
Traceback:
File "E:\GithubData\自动化\ubains-module-test\预定系统\cases\项目定制\兰州中石化项目25-05-24\代办事宜\代办事宜.py", line 53, in teststeps
safe_click((locator_type, locator_value), wd)
File "E:\GithubData\自动化\ubains-module-test\预定系统\Base\base.py", line 252, in safe_click
element.click()
File "E:\Python\lib\site-packages\selenium\webdriver\remote\webelement.py", line 119, in click
self._execute(Command.CLICK_ELEMENT)
File "E:\Python\lib\site-packages\selenium\webdriver\remote\webelement.py", line 572, in _execute
return self._parent.execute(command, params)
File "E:\Python\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 448, in execute
self.error_handler.check_response(response)
File "E:\Python\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 232, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.ElementClickInterceptedException: Message: element click intercepted: Element <span>...</span> is not clickable at point (1742, 255). Other element would receive the click: <div data-v-5f2646ec="" class="el-dialog__wrapper" style="z-index: 2001;">...</div>
(Session info: chrome=137.0.7151.41)
Stacktrace:
GetHandleVerifier [0x0x7ff6548a91f5+2853845]
GetHandleVerifier [0x0x7ff654603ac0+79008]
(No symbol) [0x0x7ff6543c9bda]
(No symbol) [0x0x7ff6544280e9]
(No symbol) [0x0x7ff654425a8b]
(No symbol) [0x0x7ff654422ad1]
(No symbol) [0x0x7ff6544219d1]
(No symbol) [0x0x7ff654413004]
(No symbol) [0x0x7ff6544484ba]
(No symbol) [0x0x7ff6544128b6]
(No symbol) [0x0x7ff6544486d0]
(No symbol) [0x0x7ff6544708f5]
(No symbol) [0x0x7ff654448293]
(No symbol) [0x0x7ff654411061]
(No symbol) [0x0x7ff654411df3]
GetHandleVerifier [0x0x7ff6548d410d+3029741]
GetHandleVerifier [0x0x7ff6548ce52d+3006221]
GetHandleVerifier [0x0x7ff6548ed5b2+3133330]
GetHandleVerifier [0x0x7ff65461d98e+185198]
GetHandleVerifier [0x0x7ff654624edf+215231]
GetHandleVerifier [0x0x7ff65460c324+113924]
GetHandleVerifier [0x0x7ff65460c4d9+114361]
GetHandleVerifier [0x0x7ff6545f3208+11240]
BaseThreadInitThunk [0x0x7ffb2264e8d7+23]
RtlUserThreadStart [0x0x7ffb2449c5dc+44]
* 代办事宜005 - 2025-06-10 19:45:22
异常 : 0
[ case execution steps ]
页面: AgencyMatters、元素定位类型: xpath、元素定位值: //body[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[1]/div[1]/div[2]/div[2]/div[1]/div[3]/table[1]/tbody[1]/tr[1]/td[5]/div[1]/button[1]/span[1]、元素类型: click、元素值: 、预期结果:
ABORT Message: element click intercepted: Element <span>...</span> is not clickable at point (1742, 255). Other element would receive the click: <div data-v-5f2646ec="" class="el-dialog__wrapper" style="z-index: 2001;">...</div>
(Session info: chrome=137.0.7151.41)
Stacktrace:
GetHandleVerifier [0x0x7ff6548a91f5+2853845]
GetHandleVerifier [0x0x7ff654603ac0+79008]
(No symbol) [0x0x7ff6543c9bda]
(No symbol) [0x0x7ff6544280e9]
(No symbol) [0x0x7ff654425a8b]
(No symbol) [0x0x7ff654422ad1]
(No symbol) [0x0x7ff6544219d1]
(No symbol) [0x0x7ff654413004]
(No symbol) [0x0x7ff6544484ba]
(No symbol) [0x0x7ff6544128b6]
(No symbol) [0x0x7ff6544486d0]
(No symbol) [0x0x7ff6544708f5]
(No symbol) [0x0x7ff654448293]
(No symbol) [0x0x7ff654411061]
(No symbol) [0x0x7ff654411df3]
GetHandleVerifier [0x0x7ff6548d410d+3029741]
GetHandleVerifier [0x0x7ff6548ce52d+3006221]
GetHandleVerifier [0x0x7ff6548ed5b2+3133330]
GetHandleVerifier [0x0x7ff65461d98e+185198]
GetHandleVerifier [0x0x7ff654624edf+215231]
GetHandleVerifier [0x0x7ff65460c324+113924]
GetHandleVerifier [0x0x7ff65460c4d9+114361]
GetHandleVerifier [0x0x7ff6545f3208+11240]
BaseThreadInitThunk [0x0x7ffb2264e8d7+23]
RtlUserThreadStart [0x0x7ffb2449c5dc+44]
Traceback:
File "E:\GithubData\自动化\ubains-module-test\预定系统\cases\项目定制\兰州中石化项目25-05-24\代办事宜\代办事宜.py", line 53, in teststeps
safe_click((locator_type, locator_value), wd)
File "E:\GithubData\自动化\ubains-module-test\预定系统\Base\base.py", line 252, in safe_click
element.click()
File "E:\Python\lib\site-packages\selenium\webdriver\remote\webelement.py", line 119, in click
self._execute(Command.CLICK_ELEMENT)
File "E:\Python\lib\site-packages\selenium\webdriver\remote\webelement.py", line 572, in _execute
return self._parent.execute(command, params)
File "E:\Python\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 448, in execute
self.error_handler.check_response(response)
File "E:\Python\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 232, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.ElementClickInterceptedException: Message: element click intercepted: Element <span>...</span> is not clickable at point (1742, 255). Other element would receive the click: <div data-v-5f2646ec="" class="el-dialog__wrapper" style="z-index: 2001;">...</div>
(Session info: chrome=137.0.7151.41)
Stacktrace:
GetHandleVerifier [0x0x7ff6548a91f5+2853845]
GetHandleVerifier [0x0x7ff654603ac0+79008]
(No symbol) [0x0x7ff6543c9bda]
(No symbol) [0x0x7ff6544280e9]
(No symbol) [0x0x7ff654425a8b]
(No symbol) [0x0x7ff654422ad1]
(No symbol) [0x0x7ff6544219d1]
(No symbol) [0x0x7ff654413004]
(No symbol) [0x0x7ff6544484ba]
(No symbol) [0x0x7ff6544128b6]
(No symbol) [0x0x7ff6544486d0]
(No symbol) [0x0x7ff6544708f5]
(No symbol) [0x0x7ff654448293]
(No symbol) [0x0x7ff654411061]
(No symbol) [0x0x7ff654411df3]
GetHandleVerifier [0x0x7ff6548d410d+3029741]
GetHandleVerifier [0x0x7ff6548ce52d+3006221]
GetHandleVerifier [0x0x7ff6548ed5b2+3133330]
GetHandleVerifier [0x0x7ff65461d98e+185198]
GetHandleVerifier [0x0x7ff654624edf+215231]
GetHandleVerifier [0x0x7ff65460c324+113924]
GetHandleVerifier [0x0x7ff65460c4d9+114361]
GetHandleVerifier [0x0x7ff6545f3208+11240]
BaseThreadInitThunk [0x0x7ffb2264e8d7+23]
RtlUserThreadStart [0x0x7ffb2449c5dc+44]
[ suite teardown ] cases\项目定制\兰州中石化项目25-05-24\代办事宜\
套件初始化失败 : 0
套件清除 失败 : 0
用例初始化失败 : 0
用例清除 失败 : 0
No preview for this file type
No preview for this file type
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论