提交 eb07c1d1 authored 作者: 彭甘宇's avatar 彭甘宇

重新提交运维相关脚本代码

上级 a88b23bb
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding">
<file url="file://$PROJECT_DIR$/预定系统/测试数据/会议室管理/会议室管理模块/会议室新增(1).csv" charset="US-ASCII" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Black">
<option name="sdkName" value="Python 3.10 (ubains-module-test)" />
</component>
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.10" project-jdk-type="Python SDK" />
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<module type="PYTHON_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/.venv" />
</content>
<orderEntry type="jdk" jdkName="Python 3.10" jdkType="Python SDK" />
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
<component name="PyDocumentationSettings">
......
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="AutoImportSettings">
<option name="autoReloadType" value="SELECTIVE" />
</component>
<component name="ChangeListManager">
<list default="true" id="1b298f03-b3a2-4f3f-9fa2-7f833ec35924" name="更改" comment="">
<change afterPath="$PROJECT_DIR$/预定系统/测试数据/MQTT心跳上报.csv" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/预定系统/base/Mqtt_Send.py" beforeDir="false" afterPath="$PROJECT_DIR$/预定系统/base/Mqtt_Send.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/预定系统/安卓信息模块/安卓信息上报.py" beforeDir="false" afterPath="$PROJECT_DIR$/预定系统/安卓信息模块/安卓信息上报.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/预定系统/毫米波雷达模块/毫米波雷达上报.py" beforeDir="false" afterPath="$PROJECT_DIR$/预定系统/毫米波雷达模块/毫米波雷达上报.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/预定系统/测试数据/MQTT安卓上报数据.csv" beforeDir="false" afterPath="$PROJECT_DIR$/预定系统/测试数据/MQTT安卓上报数据.csv" afterDir="false" />
<change beforePath="$PROJECT_DIR$/预定系统/测试数据/MQTT毫米波上报数据.csv" beforeDir="false" afterPath="$PROJECT_DIR$/预定系统/测试数据/MQTT毫米波上报数据.csv" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
<option name="LAST_RESOLUTION" value="IGNORE" />
</component>
<component name="FileTemplateManagerImpl">
<option name="RECENT_TEMPLATES">
<list>
<option value="Python Script" />
</list>
</option>
</component>
<component name="Git.Settings">
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
</component>
<component name="ProjectColorInfo">{
&quot;associatedIndex&quot;: 0
}</component>
<component name="ProjectId" id="2n9KWIVUMNmvuX8Wm4qR3JVKzMd" />
<component name="ProjectViewState">
<option name="hideEmptyMiddlePackages" value="true" />
<option name="showLibraryContents" value="true" />
</component>
<component name="PropertiesComponent"><![CDATA[{
"keyToString": {
"Python 测试.Python 测试 (LoginBy_ActAndPwd_PyTest.py 内).executor": "Run",
"Python.安卓信息上报.executor": "Run",
"Python.毫米波雷达上报.executor": "Run",
"RunOnceActivity.ShowReadmeOnStart": "true",
"git-widget-placeholder": "develop",
"last_opened_file_path": "D:/GithubData/ubains-module-test/ubains-module-test",
"node.js.detected.package.eslint": "true",
"node.js.detected.package.tslint": "true",
"node.js.selected.package.eslint": "(autodetect)",
"node.js.selected.package.tslint": "(autodetect)",
"nodejs_package_manager_path": "npm",
"settings.editor.selected.configurable": "com.jetbrains.python.configuration.PyActiveSdkModuleConfigurable",
"vue.rearranger.settings.migration": "true"
}
}]]></component>
<component name="RecentsManager">
<key name="MoveFile.RECENT_KEYS">
<recent name="D:\GithubData\ubains-module-test\ubains-module-test\预定系统\登录模块" />
<recent name="D:\GithubData\ubains-module-test\ubains-module-test\预定系统\测试数据" />
<recent name="D:\GithubData\ubains-module-test\ubains-module-test\预定系统" />
<recent name="D:\GithubData\ubains-module-test\预定系统" />
</key>
</component>
<component name="RunManager" selected="Python.毫米波雷达上报">
<configuration name="安卓信息上报" type="PythonConfigurationType" factoryName="Python" temporary="true" nameIsGenerated="true">
<module name="ubains-module-test" />
<option name="ENV_FILES" value="" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<envs>
<env name="PYTHONUNBUFFERED" value="1" />
</envs>
<option name="SDK_HOME" value="" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/预定系统/安卓信息模块" />
<option name="IS_MODULE_SDK" value="true" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/预定系统/安卓信息模块/安卓信息上报.py" />
<option name="PARAMETERS" value="" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />
<option name="MODULE_MODE" value="false" />
<option name="REDIRECT_INPUT" value="false" />
<option name="INPUT_FILE" value="" />
<method v="2" />
</configuration>
<configuration name="毫米波雷达上报" type="PythonConfigurationType" factoryName="Python" temporary="true" nameIsGenerated="true">
<module name="ubains-module-test" />
<option name="ENV_FILES" value="" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<envs>
<env name="PYTHONUNBUFFERED" value="1" />
</envs>
<option name="SDK_HOME" value="" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/预定系统/毫米波雷达模块" />
<option name="IS_MODULE_SDK" value="true" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/预定系统/毫米波雷达模块/毫米波雷达上报.py" />
<option name="PARAMETERS" value="" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />
<option name="MODULE_MODE" value="false" />
<option name="REDIRECT_INPUT" value="false" />
<option name="INPUT_FILE" value="" />
<method v="2" />
</configuration>
<recent_temporary>
<list>
<item itemvalue="Python.毫米波雷达上报" />
<item itemvalue="Python.安卓信息上报" />
</list>
</recent_temporary>
</component>
<component name="SharedIndexes">
<attachedChunks>
<set>
<option value="bundled-js-predefined-d6986cc7102b-7c0b70fcd90d-JavaScript-PY-242.21829.153" />
<option value="bundled-python-sdk-464836ebc622-b74155a9e76b-com.jetbrains.pycharm.pro.sharedIndexes.bundled-PY-242.21829.153" />
</set>
</attachedChunks>
</component>
<component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="应用程序级" UseSingleDictionary="true" transferred="true" />
<component name="TaskManager">
<task active="true" id="Default" summary="默认任务">
<changelist id="1b298f03-b3a2-4f3f-9fa2-7f833ec35924" name="更改" comment="" />
<created>1728379882087</created>
<option name="number" value="Default" />
<option name="presentableId" value="Default" />
<updated>1728379882087</updated>
<workItem from="1728379883141" duration="132000" />
<workItem from="1728380017193" duration="171000" />
<workItem from="1729481397357" duration="2465000" />
<workItem from="1729519480013" duration="13278000" />
<workItem from="1729685636638" duration="4482000" />
<<<<<<< HEAD
<workItem from="1729690521898" duration="8355000" />
=======
<workItem from="1729690521898" duration="1942000" />
>>>>>>> 949209b52f0b2ea4a02345aefb25f4daee4ec4bd
</task>
<servers />
</component>
<component name="TypeScriptGeneratedFilesManager">
<option name="version" value="3" />
</component>
<component name="XDebuggerManager">
<breakpoint-manager>
<breakpoints>
<line-breakpoint enabled="true" suspend="THREAD" type="python-line">
<url>file://$PROJECT_DIR$/Meeting2.0/登录模块/Base/Base.py</url>
<option name="timeStamp" value="1" />
</line-breakpoint>
</breakpoints>
</breakpoint-manager>
</component>
<component name="com.intellij.coverage.CoverageDataManagerImpl">
<<<<<<< HEAD
<SUITE FILE_PATH="coverage/ubains_module_test$.coverage" NAME="毫米波雷达上报 覆盖结果" MODIFIED="1729761958173" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="false" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/预定系统/毫米波雷达模块" />
=======
<SUITE FILE_PATH="coverage/ubains_module_test$.coverage" NAME="安卓信息上报 覆盖结果" MODIFIED="1729740841195" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="false" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/预定系统/安卓信息模块" />
>>>>>>> 949209b52f0b2ea4a02345aefb25f4daee4ec4bd
</component>
</project>
\ No newline at end of file
<component name="InspectionProjectProfileManager">
<profile version="1.0">
<option name="myName" value="Project Default" />
<inspection_tool class="PyMethodMayBeStaticInspection" enabled="false" level="WEAK WARNING" enabled_by_default="false" />
<inspection_tool class="PyPep8NamingInspection" enabled="true" level="WEAK WARNING" enabled_by_default="true">
<option name="ignoredErrors">
<list>
<option value="N812" />
</list>
</option>
</inspection_tool>
<inspection_tool class="PyUnboundLocalVariableInspection" enabled="false" level="WARNING" enabled_by_default="false" />
</profile>
</component>
\ No newline at end of file
<component name="InspectionProjectProfileManager">
<settings>
<option name="USE_PROJECT_PROFILE" value="false" />
<version value="1.0" />
</settings>
</component>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.10" project-jdk-type="Python SDK" />
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/运维集控.iml" filepath="$PROJECT_DIR$/.idea/运维集控.iml" />
</modules>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/.." vcs="Git" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<module type="PYTHON_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
<component name="PyDocumentationSettings">
<option name="format" value="PLAIN" />
<option name="myDocStringFormat" value="Plain" />
</component>
</module>
\ No newline at end of file
from lib.login import *
# def suite_setup():
# wd = GSTORE['wd']
def suite_teardown():
INFO('进行清除操作')
wd = GSTORE['wd']
wd.quit()
from lib.login import *
class user_login_001:
name = 'login_test_01'
def teststeps(self):
wd = GSTORE['wd']
STEP(1, '用户登录')
user_login("admin@pgy", "ub@123456", "csba")
# run_login_tests()
STEP(2, '验证是否登录成功')
get_menu = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.CSS_SELECTOR, '.el-message__content'))
)
get_menu1 = get_menu.text
CHECK_POINT('检查是否出现弹窗', get_menu1 == "操作成功!")
def suite_teardown():
wd.quit()
# class user_login_002:
# name = 'login_test_02'
#
# def teststeps(self):
# STEP(1, '打开网页')
#
# wd = GSTORE['wd']
#
# STEP(2, '用户登录')
# user_login("admin@pgy", "ub@123456", "csba")
# # run_login_tests()
#
# STEP(3, '验证是否登录成功')
# get_menu = WebDriverWait(wd, 10).until(
# EC.presence_of_element_located((By.CSS_SELECTOR, '.el-message__content'))
# )
# get_menu1 = get_menu.text
# CHECK_POINT('检查是否出现弹窗', get_menu1 == "操作成功!")
#
# STEP(4, '清除数据')
#
# def suite_teardown():
# INFO('进行清除操作')
# wd.quit()
from lib.login import *
class UserAdd001:
name = 'user_add_001'
def teststeps(self):
wd = GSTORE['wd']
STEP(1, '点击新增按钮')
user_add = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//div[@class='company-edmit-right']//span[contains(text(),'新增')]"))
)
user_add.click()
sleep(2)
STEP(2, '填写登录名')
account_input = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//input[@placeholder='登录名以字母开头,长度在5-18之间,只能包含字母、数字和下划线、@']"))
)
account_input.clear()
account_input.send_keys("admin@test1")
STEP(3, '填写用户名称')
account_name_input = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//div[@class='el-input el-input--suffix']//input[@placeholder='请输入用户名称']"))
)
account_name_input.clear()
account_name_input.send_keys("admin@test1")
STEP(4, '填写新密码')
passwd_input = WebDriverWait(wd, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//input[@placeholder='必须包含字母(不区分大小写)、数字和特殊字符,至少8个字符']"))
)
passwd_input.clear()
passwd_input.send_keys("ub@123456")
STEP(5, '填写确认密码')
sepasswd_input = WebDriverWait(wd, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//input[@placeholder='请确认密码']"))
)
sepasswd_input.clear()
sepasswd_input.send_keys("ub@123456")
STEP(6, '点击确认')
commit = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//div[@aria-label='新增']//span[contains(text(),'确 定')]"))
)
commit.click()
STEP(7, '验证是否新增成功')
get_menu = WebDriverWait(wd, 10).until(
EC.visibility_of_element_located((By.XPATH, "//p[@class='el-message__content']"))
)
get_menu1 = get_menu.text
INFO(get_menu1)
CHECK_POINT('检查是否出现成功提示弹窗', get_menu1 == "操作成功!")
sleep(2)
# class UserAdd002:
# name = 'user_add_002'
# def teststeps(self):
# wd = GSTORE['wd']
#
# STEP(1, '点击新增按钮')
# user_add = WebDriverWait(wd, 10).until(
# EC.element_to_be_clickable((By.XPATH, "//div[@class='company-edmit-right']//span[contains(text(),'新增')]"))
# )
# user_add.click()
# sleep(2)
#
# STEP(2, '填写登录名')
# account_input = WebDriverWait(wd, 10).until(
# EC.presence_of_element_located((By.XPATH, "//input[@placeholder='登录名以字母开头,长度在5-18之间,只能包含字母、数字和下划线、@']"))
# )
# account_input.clear()
# account_input.send_keys("admin@test1")
#
# STEP(3, '填写用户名称')
# account_name_input = WebDriverWait(wd, 10).until(
# EC.presence_of_element_located((By.XPATH, "//div[@class='el-input el-input--suffix']//input[@placeholder='请输入用户名称']"))
# )
# account_name_input.clear()
# account_name_input.send_keys("测试用户2")
#
# STEP(4, '填写新密码')
# passwd_input = WebDriverWait(wd, 10).until(
# EC.presence_of_element_located(
# (By.XPATH, "//input[@placeholder='必须包含字母(不区分大小写)、数字和特殊字符,至少8个字符']"))
# )
# passwd_input.clear()
# passwd_input.send_keys("ub@123456")
#
# STEP(5, '填写确认密码')
# sepasswd_input = WebDriverWait(wd, 10).until(
# EC.presence_of_element_located(
# (By.XPATH, "//input[@placeholder='请确认密码']"))
# )
# sepasswd_input.clear()
# sepasswd_input.send_keys("ub@123456")
#
# STEP(6, '点击确认')
# commit = WebDriverWait(wd, 10).until(
# EC.element_to_be_clickable((By.XPATH, "//div[@aria-label='新增']//span[contains(text(),'确 定')]"))
# )
# commit.click()
#
# STEP(7, '验证是否正常提示')
# get_menu = WebDriverWait(wd, 10).until(
# EC.presence_of_element_located((By.CSS_SELECTOR, '.el-message__content'))
# )
# get_menu1 = get_menu.text
# # CHECK_POINT('检查是否出现错误提示弹窗', get_menu1 == "登录名已存在,请重新输入")
# CHECK_POINT('检查是否出现成功提示弹窗', get_menu1 == "操作成功!")
# sleep(2)
from lib.login import *
class Userquery001:
name = 'user_query_001'
def teststeps(self):
wd = GSTORE['wd']
STEP(1, '点击搜索框')
user_query = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//input[@placeholder='请输入用户名称']"))
)
user_query.click()
sleep(2)
STEP(2, '填写登录名')
account_input = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//input[@placeholder='请输入用户名称']"))
)
account_input.clear()
account_input.send_keys("admin@test1")
STEP(3, '校验是否成功检索用户')
get_user = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//div[normalize-space()='admin@test1']"))
)
get_username = get_user.text
CHECK_POINT('校验是否成功检索用户', get_username == "admin@test1")
sleep(2)
# 调用钉钉输出测试报告
# get_reportfile_send_dingding("123213_测试报告", "http://192.168.1.251")
\ No newline at end of file
from lib.login import *
class UserModify001:
name = 'user_modify_001'
def teststeps(self):
wd = GSTORE['wd']
STEP(1, '点击搜索框')
user_query = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//input[@placeholder='请输入用户名称']"))
)
user_query.click()
sleep(2)
STEP(2, '填写登录名')
account_input = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//input[@placeholder='请输入用户名称']"))
)
account_input.clear()
account_input.send_keys("admin@test1")
STEP(3, '勾选用户')
select_click= WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//tbody//tr//td//div//label//span//span"))
)
select_click.click()
sleep(2)
STEP(4, '点击编辑按钮')
user_update = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//div[contains(@class,'company-edmit-right')]//span[contains(text(),'编辑')]"))
)
user_update.click()
sleep(2)
STEP(5, '填写用户名称')
account_name_input = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//div[@class='el-input el-input--suffix']//input[@placeholder='请输入用户名称']"))
)
account_name_input.clear()
account_name_input.send_keys("admin@update")
STEP(6, '勾选修改密码按钮')
user_passwd_click = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//div[contains(@class,'dialog-input')]//span[contains(@class,'el-checkbox__inner')]"))
)
user_passwd_click.click()
sleep(2)
STEP(6, '填写当前用户密码')
current_passwd = WebDriverWait(wd, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//input[contains(@placeholder,'请输当前登录用户的密码')]"))
)
current_passwd.clear()
current_passwd.send_keys("ub@123456")
STEP(7, '填写新密码')
newpasswd = WebDriverWait(wd, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//input[contains(@placeholder,'必须包含字母(不区分大小写)、数字和特殊字符,至少8个字符')]"))
)
newpasswd.clear()
newpasswd.send_keys("ub@12345678")
STEP(8, '填写确认密码')
verify_passwd = WebDriverWait(wd, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//input[@placeholder='请确认密码']"))
)
verify_passwd.clear()
verify_passwd.send_keys("ub@12345678")
STEP(9, '填写用户工号')
sepasswd_input = WebDriverWait(wd, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//input[@placeholder='请输入工号']"))
)
sepasswd_input.clear()
sepasswd_input.send_keys("123456")
STEP(9, '填写手机号')
phone = WebDriverWait(wd, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//input[@placeholder='请输入手机号码']"))
)
phone.clear()
phone.send_keys("13169131242")
STEP(10, '填写邮箱')
sepasswd_input = WebDriverWait(wd, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//input[@placeholder='请输入邮箱']"))
)
sepasswd_input.clear()
sepasswd_input.send_keys("12341@qq.com")
STEP(11, '填写备注')
user_remark = WebDriverWait(wd, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//input[@placeholder='备注']"))
)
user_remark.clear()
user_remark.send_keys("测试用户")
STEP(12, '点击确认')
commit = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//div[contains(@aria-label,'编辑')]//span[contains(text(),'确 定')]"))
)
commit.click()
STEP(13, '验证是否编辑成功')
get_menu = WebDriverWait(wd, 10).until(
EC.visibility_of_element_located((By.XPATH, "//p[@class='el-message__content']"))
)
get_menu1 = get_menu.text
CHECK_POINT('检查是否出现成功提示弹窗', get_menu1 == "操作成功!")
sleep(2)
\ No newline at end of file
from lib.login import *
class Userdelete001:
name = 'user_delete_001'
def teststeps(self):
wd = GSTORE['wd']
STEP(1, '点击搜索框')
user_query = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//input[@placeholder='请输入用户名称']"))
)
user_query.click()
sleep(2)
STEP(2, '填写登录名')
account_input = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//input[@placeholder='请输入用户名称']"))
)
account_input.clear()
account_input.send_keys("admin@test1")
STEP(3, '勾选用户')
select_click= WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//tbody//tr//td//div//label//span//span"))
)
select_click.click()
sleep(2)
STEP(4, '点击删除按钮')
user_update = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//span[contains(text(),'删除')]"))
)
user_update.click()
sleep(2)
STEP(5, '点击确认')
commit = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//button[contains(@class,'el-button el-button--default el-button--small el-button--primary')]//span[contains(text(),'确 定')]"))
)
commit.click()
STEP(6, '验证是否删除成功')
get_menu = WebDriverWait(wd, 10).until(
EC.visibility_of_element_located((By.XPATH, "//p[@class='el-message__content']"))
)
get_menu1 = get_menu.text
CHECK_POINT('检查是否出现成功提示弹窗', get_menu1 == "操作成功!")
sleep(2)
# 本地启动http微服务
# python - m http.server 80 - -directory log
# 输出报告到钉钉
get_reportfile_send_dingding("用户管理模块_测试报告", "http://192.168.1.251")
\ No newline at end of file
from lib.login import *
def suite_setup():
wd = GSTORE['wd']
user_login("admin@pgy", "ub@123456", "csba")
enter_system()
enter_manage()
enter_user_manage()
# def suite_teardown():
# INFO('进行清除操作')
# wd = GSTORE['wd']
# wd.quit()
from lib.login import *
class AreagroupAdd001:
name = 'Areagroup_add_001'
def teststeps(self):
wd = GSTORE['wd']
STEP(1, '点击新增按钮')
areagroup_add = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//div[@class='company-edmit-right']//span[contains(text(),'新增')]"))
)
areagroup_add.click()
sleep(2)
STEP(2, '填写分组名称')
group_name = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//input[@placeholder='长度1-20个字符']"))
)
group_name.clear()
group_name.send_keys("测试区域1")
STEP(3, '填写分组地址')
group_address = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//input[@placeholder='输入地址不能大于50个字符']"))
)
group_address.clear()
group_address.send_keys("顺恒利大厦")
STEP(4, '填写分组备注')
group_remark = WebDriverWait(wd, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//input[@placeholder='请输入备注']"))
)
group_remark.clear()
group_remark.send_keys("测试分组备注")
STEP(6, '点击确认')
commit = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//div[@class='dialog-footer']//span[contains(text(),'确 定')]"))
)
commit.click()
STEP(7, '验证是否新增成功')
get_menu = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.CSS_SELECTOR, '.el-message__content'))
)
get_menu1 = get_menu.text
CHECK_POINT('检查是否出现成功提示弹窗', get_menu1 == "操作成功!")
sleep(2)
\ No newline at end of file
from lib.login import *
class AreagroupMod001:
name = 'Areagroup_modify_001'
def teststeps(self):
wd = GSTORE['wd']
STEP(1, '勾选分组,点击“编辑”按钮')
try:
# 等待页面加载,并查找包含文本“测试”的元素旁边的复选框
checkbox = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//span[contains(text(), '测试区域1')]//span[@class='el-checkbox__inner']"))
)
areagroup_select = checkbox.find_element(By.XPATH, "./ancestor::span[contains(@class, 'el-checkbox__input')]//input")
# 勾选复选框
if not areagroup_select.is_selected():
areagroup_select.click()
finally:
areagroup_modify = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//span[contains(text(),'编辑')]"))
)
areagroup_modify.click()
sleep(2)
STEP(2, '修改分组名称')
group_name = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//input[@placeholder='长度1-20个字符']"))
)
group_name.clear()
group_name.send_keys("测试区域1-已修改")
STEP(3, '修改分组地址')
group_address = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//input[@placeholder='输入地址不能大于50个字符']"))
)
group_address.clear()
group_address.send_keys("顺恒利大厦-已修改")
STEP(4, '修改分组备注')
group_remark = WebDriverWait(wd, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//input[@placeholder='请输入备注']"))
)
group_remark.clear()
group_remark.send_keys("修改测试分组")
STEP(5, '点击确认')
commit = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//div[@class='dialog-footer']//span[contains(text(),'确 定')]"))
)
commit.click()
STEP(6, '验证是否修改成功')
get_menu = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.CSS_SELECTOR, '.el-message__content'))
)
get_menu1 = get_menu.text
CHECK_POINT('检查是否出现成功提示弹窗', get_menu1 == "操作成功!")
sleep(2)
\ No newline at end of file
from lib.login import *
class AreagroupDel001:
name = 'Areagroup_delete_001'
def teststeps(self):
wd = GSTORE['wd']
STEP(1, '勾选分组')
checkbox = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//span[contains(text(), '测试区域1')]//span[@class='el-checkbox__inner']"))
)
areagroup_select = checkbox.find_element(By.XPATH, "./ancestor::span[contains(@class, 'el-checkbox__input')]//input")
areagroup_select.click()
sleep(2)
STEP(2, '点击“删除”按钮')
areagroup_modify = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//span[contains(text(),'删除')]"))
)
areagroup_modify.click()
sleep(2)
STEP(3, '点击确认')
commit = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "(//span[contains(text(),'确 定')])[3]"))
)
commit.click()
STEP(6, '验证是否修改成功')
get_menu = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.CSS_SELECTOR, '.el-message__content'))
)
get_menu1 = get_menu.text
CHECK_POINT('检查是否出现成功提示弹窗', get_menu1 == "操作成功!")
sleep(2)
\ No newline at end of file
from lib.login import *
def suite_setup():
wd = GSTORE['wd']
user_login("admin@pgy", "ub@123456", "csba")
enter_system()
enter_manage()
enter_areagroup_manage()
# def suite_teardown():
# INFO('进行清除操作')
# wd = GSTORE['wd']
# wd.quit()
from lib.login import *
class AreatypeAdd001:
name = 'Areatype_add_001'
def teststeps(self):
wd = GSTORE['wd']
STEP(1, '点击新增按钮')
areatype_add = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//div[@class='company-edmit-right']//span[contains(text(),'新增')]"))
)
areatype_add.click()
sleep(2)
STEP(2, '填写区域类型')
type_name = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//div[@class='el-input el-input--suffix']//input[@placeholder='请输入区域类型']"))
)
type_name.clear()
type_name.send_keys("测试类型1")
STEP(3, '填写排序')
type_sort = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//input[@placeholder='排序']"))
)
type_sort.clear()
type_sort.send_keys("123")
STEP(4, '填写备注')
type_remark = WebDriverWait(wd, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//input[@placeholder='备注']"))
)
type_remark.clear()
type_remark.send_keys("类型备注测试")
STEP(5, '点击确认')
commit = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//div[@class='dialog-footer']//span[contains(text(),'确 定')]"))
)
commit.click()
STEP(6, '验证是否新增成功')
get_menu = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.CSS_SELECTOR, '.el-message__content'))
)
get_menu1 = get_menu.text
CHECK_POINT('检查是否出现成功提示弹窗', get_menu1 == "操作成功!")
sleep(2)
\ No newline at end of file
from lib.login import *
class AreatypeMod001:
name = 'Areatype_mod_001'
def teststeps(self):
wd = GSTORE['wd']
STEP(1, '搜索对应的区域类型')
areatype_search= WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "(//input[contains(@placeholder,'请输入区域类型')])[1]"))
)
areatype_search.clear()
areatype_search.send_keys("测试类型1")
STEP(2, '勾选区域类型')
areatype_select = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "(//span[contains(@class,'el-checkbox__inner')])[2]"))
)
areatype_select.click()
STEP(3, '点击编辑按钮')
areatype_mod = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//div[@class='company-edmit-right']//span[contains(text(),'编辑')]"))
)
areatype_mod.click()
sleep(2)
STEP(4, '修改区域类型内容')
type_name = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//div[@class='el-input el-input--suffix']//input[@placeholder='请输入区域类型']"))
)
type_name.clear()
type_name.send_keys("修改-测试类型1")
STEP(5, '修改排序')
type_sort = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//input[@placeholder='排序']"))
)
type_sort.clear()
type_sort.send_keys("999")
STEP(6, '修改备注信息')
type_remark = WebDriverWait(wd, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//input[@placeholder='备注']"))
)
type_remark.clear()
type_remark.send_keys("修改类型备注测试")
STEP(7, '点击确认')
commit = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//div[@class='dialog-footer']//span[contains(text(),'确 定')]"))
)
commit.click()
STEP(8, '验证是否修改成功')
get_menu = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.CSS_SELECTOR, '.el-message__content'))
)
get_menu1 = get_menu.text
CHECK_POINT('检查是否出现成功提示弹窗', get_menu1 == "操作成功!")
sleep(2)
\ No newline at end of file
from lib.login import *
class AreatypeDel001:
name = 'Areatype_del_001'
def teststeps(self):
wd = GSTORE['wd']
STEP(1, '搜索对应的区域类型')
areatype_search= WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "(//input[contains(@placeholder,'请输入区域类型')])[1]"))
)
areatype_search.clear()
areatype_search.send_keys("修改-测试类型1")
STEP(2, '勾选区域类型')
areatype_select = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "(//span[contains(@class,'el-checkbox__inner')])[2]"))
)
areatype_select.click()
STEP(3, '点击删除按钮')
areatype_mod = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//div[@class='company-edmit-right']//span[contains(text(),'删除')]"))
)
areatype_mod.click()
sleep(2)
STEP(4, '点击确认')
commit = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//div[@class='dialog-footer']//span[contains(text(),'确 定')]"))
)
commit.click()
STEP(5, '验证是否修改成功')
get_menu = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.CSS_SELECTOR, '.el-message__content'))
)
get_menu1 = get_menu.text
CHECK_POINT('检查是否出现成功提示弹窗', get_menu1 == "操作成功!")
sleep(2)
\ No newline at end of file
from lib.login import *
def suite_setup():
wd = GSTORE['wd']
user_login("admin@pgy", "ub@123456", "csba")
enter_system()
enter_manage()
enter_areatype_manage()
# def suite_teardown():
# INFO('进行清除操作')
# wd = GSTORE['wd']
# wd.quit()
from lib.login import *
class AreafuntionAdd001:
name = 'Areafuntion_add_001'
def teststeps(self):
wd = GSTORE['wd']
STEP(1, '点击新增按钮')
areafuntion_add = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//div[@class='company-edmit-right']//span[contains(text(),'新增')]"))
)
areafuntion_add.click()
sleep(2)
STEP(2, '填写功能名称')
funtion_name = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//div[@class='el-input el-input--suffix']//input[@placeholder='请输入功能名称']"))
)
funtion_name.clear()
funtion_name.send_keys("测试功能1")
STEP(3, '填写排序')
funtion_sort = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//input[@placeholder='排序']"))
)
funtion_sort.clear()
funtion_sort.send_keys("123")
STEP(4, '填写备注')
funtion_remark = WebDriverWait(wd, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//input[@placeholder='备注']"))
)
funtion_remark.clear()
funtion_remark.send_keys("功能备注测试")
STEP(5, '点击确认')
commit = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//div[@class='dialog-footer']//span[contains(text(),'确 定')]"))
)
commit.click()
STEP(6, '验证是否新增成功')
get_menu = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.CSS_SELECTOR, '.el-message__content'))
)
get_menu1 = get_menu.text
CHECK_POINT('检查是否出现成功提示弹窗', get_menu1 == "操作成功!")
sleep(2)
\ No newline at end of file
from lib.login import *
class areafuntionMod001:
name = 'areafuntion_mod_001'
def teststeps(self):
wd = GSTORE['wd']
STEP(1, '搜索对应的区域功能')
areafuntion_search= WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "(//input[contains(@placeholder,'请输入区域功能')])[1]"))
)
areafuntion_search.clear()
areafuntion_search.send_keys("测试功能1")
STEP(2, '勾选区域功能')
areafuntion_select = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "(//span[contains(@class,'el-checkbox__inner')])[2]"))
)
areafuntion_select.click()
STEP(3, '点击编辑按钮')
areafuntion_mod = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//div[@class='company-edmit-right']//span[contains(text(),'编辑')]"))
)
areafuntion_mod.click()
sleep(2)
STEP(4, '修改区域功能内容')
funtion_name = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//div[@class='el-input el-input--suffix']//input[@placeholder='请输入区域功能']"))
)
funtion_name.clear()
funtion_name.send_keys("修改-测试功能1")
STEP(5, '修改排序')
funtion_sort = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.XPATH, "//input[@placeholder='排序']"))
)
funtion_sort.clear()
funtion_sort.send_keys("999")
STEP(6, '修改备注信息')
funtion_remark = WebDriverWait(wd, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//input[@placeholder='备注']"))
)
funtion_remark.clear()
funtion_remark.send_keys("修改-功能备注")
STEP(7, '点击确认')
commit = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//div[@class='dialog-footer']//span[contains(text(),'确 定')]"))
)
commit.click()
STEP(8, '验证是否修改成功')
get_menu = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.CSS_SELECTOR, '.el-message__content'))
)
get_menu1 = get_menu.text
CHECK_POINT('检查是否出现成功提示弹窗', get_menu1 == "操作成功!")
sleep(2)
\ No newline at end of file
from lib.login import *
class areafuntionDel001:
name = 'areafuntion_del_001'
def teststeps(self):
wd = GSTORE['wd']
STEP(1, '搜索对应的区域功能')
areafuntion_search= WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "(//input[contains(@placeholder,'请输入区域功能')])[1]"))
)
areafuntion_search.clear()
areafuntion_search.send_keys("修改-测试功能1")
STEP(2, '勾选区域功能')
areafuntion_select = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "(//span[contains(@class,'el-checkbox__inner')])[2]"))
)
areafuntion_select.click()
STEP(3, '点击删除按钮')
areafuntion_mod = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//div[@class='company-edmit-right']//span[contains(text(),'删除')]"))
)
areafuntion_mod.click()
sleep(2)
STEP(4, '点击确认')
commit = WebDriverWait(wd, 10).until(
EC.element_to_be_clickable((By.XPATH, "//div[@class='dialog-footer']//span[contains(text(),'确 定')]"))
)
commit.click()
STEP(5, '验证是否修改成功')
get_menu = WebDriverWait(wd, 10).until(
EC.presence_of_element_located((By.CSS_SELECTOR, '.el-message__content'))
)
get_menu1 = get_menu.text
CHECK_POINT('检查是否出现成功提示弹窗', get_menu1 == "操作成功!")
sleep(2)
\ No newline at end of file
from lib.login import *
def suite_setup():
wd = GSTORE['wd']
user_login("admin@pgy", "ub@123456", "csba")
enter_system()
enter_manage()
enter_areafuntion_manage()
# def suite_teardown():
# INFO('进行清除操作')
# wd = GSTORE['wd']
# wd.quit()
=== [ 收集测试用例 ] ===
== cases\__st__.py
== cases\__init__.py
** no cases in this file, skip it.
== cases\01登录模块\__st__.py
== cases\01登录模块\__init__.py
** no cases in this file, skip it.
== cases\01登录模块\管理员登录.py
** no cases in this file , skip it.
== cases\02用户管理\__st__.py
== cases\02用户管理\01新增用户.py
** no cases in this file , skip it.
== cases\02用户管理\02查询用户.py
** no cases in this file , skip it.
== cases\02用户管理\03编辑用户.py
** no cases in this file , skip it.
== cases\02用户管理\04删除用户.py
** no cases in this file , skip it.
== cases\02用户管理\__init__.py
** no cases in this file, skip it.
== cases\03区域分组\__st__.py
== cases\03区域分组\01新增区域分组.py
** no cases in this file , skip it.
== cases\03区域分组\02编辑区域分组.py
** no cases in this file , skip it.
== cases\03区域分组\03删除区域分组.py
** no cases in this file , skip it.
== cases\03区域分组\__init__.py
** no cases in this file, skip it.
== cases\04区域类型\__st__.py
== cases\04区域类型\01新增区域类型.py
** no cases in this file , skip it.
== cases\04区域类型\02编辑区域类型.py
** no cases in this file , skip it.
== cases\04区域类型\03删除区域类型.py
** no cases in this file , skip it.
== cases\04区域类型\__init__.py
** no cases in this file, skip it.
== cases\05区域功能\__st__.py
== cases\05区域功能\01新增区域功能.py
** no cases in this file , skip it.
== cases\05区域功能\02编辑区域功能.py
** no cases in this file , skip it.
== cases\05区域功能\03删除区域功能.py
** no cases in this file , skip it.
== cases\05区域功能\__init__.py
** no cases in this file, skip it.
== cases\06区域管理\01新增区域.py
** no cases in this file, skip it.
== cases\06区域管理\02编辑区域.py
** no cases in this file, skip it.
== cases\06区域管理\03删除区域.py
** no cases in this file, skip it.
== cases\06区域管理\__init__.py
** no cases in this file, skip it.
== cases\07类型标签\__init__.py
** no cases in this file, skip it.
== cases\08协议管理\__init__.py
** no cases in this file, skip it.
== cases\09设备管理\__init__.py
** no cases in this file, skip it.
== cases\10数据类型\__init__.py
** no cases in this file, skip it.
== cases\11联动动作\__init__.py
** no cases in this file, skip it.
=== [ 执行测试用例 ] ===
!! 没有可以执行的测试用例
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="AutoImportSettings">
<option name="autoReloadType" value="SELECTIVE" />
</component>
<component name="ChangeListManager">
<list default="true" id="c611fa12-cf95-4015-91bc-655fca8727f9" name="更改" comment="">
<change afterPath="$PROJECT_DIR$/Base/__init__.py" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Base/base.py" afterDir="false" />
<change afterPath="$PROJECT_DIR$/__init__.py" afterDir="false" />
<change afterPath="$PROJECT_DIR$/cases/登录测试.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.gitignore" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.name" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/inspectionProfiles/profiles_settings.xml" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/misc.xml" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/modules.xml" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/预定系统标准版.iml" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/MQTT/安卓信息模块/安卓信息上报.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/MQTT/毫米波雷达模块/毫米波雷达上报.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/README.md" beforeDir="false" afterPath="$PROJECT_DIR$/README.md" afterDir="false" />
<change beforePath="$PROJECT_DIR$/base/Base.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/base/Broswer_driver.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/base/Mqtt_Send.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/测试数据/Login_Test.csv" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/测试数据/MQTT安卓上报数据.csv" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/测试数据/MQTT毫米波上报数据.csv" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/登录模块/Login_Test_UnitTest.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/登录模块/账号密码登录.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
......@@ -41,21 +23,20 @@
<option name="hideEmptyMiddlePackages" value="true" />
<option name="showLibraryContents" value="true" />
</component>
<component name="PropertiesComponent"><![CDATA[{
"keyToString": {
"Python.登录测试.executor": "Run",
"RunOnceActivity.ShowReadmeOnStart": "true",
"git-widget-placeholder": "develop",
"last_opened_file_path": "D:/GithubData/ubains-module-test/ubains-module-test/预定系统",
"nodejs_package_manager_path": "npm",
"vue.rearranger.settings.migration": "true"
<component name="PropertiesComponent">{
&quot;keyToString&quot;: {
&quot;Python.登录测试.executor&quot;: &quot;Run&quot;,
&quot;RunOnceActivity.ShowReadmeOnStart&quot;: &quot;true&quot;,
&quot;git-widget-placeholder&quot;: &quot;develop&quot;,
&quot;last_opened_file_path&quot;: &quot;D:/GithubData/ubains-module-test/ubains-module-test/预定系统&quot;,
&quot;nodejs_package_manager_path&quot;: &quot;npm&quot;,
&quot;vue.rearranger.settings.migration&quot;: &quot;true&quot;
}
}]]></component>
}</component>
<component name="SharedIndexes">
<attachedChunks>
<set>
<option value="bundled-js-predefined-d6986cc7102b-7c0b70fcd90d-JavaScript-PY-242.21829.153" />
<option value="bundled-python-sdk-464836ebc622-b74155a9e76b-com.jetbrains.pycharm.pro.sharedIndexes.bundled-PY-242.21829.153" />
<option value="bundled-python-sdk-d7ad00fb9fc3-c546a90a8094-com.jetbrains.pycharm.community.sharedIndexes.bundled-PC-242.23726.102" />
</set>
</attachedChunks>
</component>
......
topic,client_id,presence_state,kaiguan,julishezhi,lingmindushezhi,wifi_mac,ble_mac,sn,ip
/c1_100_wifi_u/D4F98D094001/properties/upload,D4F98D094001,1,0,3,2,D4F98D094001,D4F98D093001,D4F98D092001,192.168.1.1
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论