This commit is contained in:
tlh717 2023-03-08 14:44:52 +08:00
parent bd53ea81a5
commit 2c471b48ff
7 changed files with 199 additions and 25 deletions

15
.idea/EasyTest.iml Normal file
View File

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="PYTHON_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$" />
<orderEntry type="jdk" jdkName="Python 3.8 (EasyTest-u5raha45)" jdkType="Python SDK" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
<component name="PyDocumentationSettings">
<option name="format" value="PLAIN" />
<option name="myDocStringFormat" value="Plain" />
</component>
<component name="TestRunnerService">
<option name="PROJECT_TEST_RUNNER" value="py.test" />
</component>
</module>

View File

@ -0,0 +1,148 @@
<component name="InspectionProjectProfileManager">
<profile version="1.0">
<option name="myName" value="Project Default" />
<inspection_tool class="DuplicatedCode" enabled="true" level="WEAK WARNING" enabled_by_default="true">
<Languages>
<language minSize="618" name="Python" />
</Languages>
</inspection_tool>
<inspection_tool class="HttpUrlsUsage" enabled="true" level="WEAK WARNING" enabled_by_default="true">
<option name="ignoredUrls">
<list>
<option value="http://localhost" />
<option value="http://127.0.0.1" />
<option value="http://0.0.0.0" />
<option value="http://www.w3.org/" />
<option value="http://json-schema.org/draft" />
<option value="http://java.sun.com/" />
<option value="http://xmlns.jcp.org/" />
<option value="http://javafx.com/javafx/" />
<option value="http://javafx.com/fxml" />
<option value="http://maven.apache.org/xsd/" />
<option value="http://maven.apache.org/POM/" />
<option value="http://www.springframework.org/schema/" />
<option value="http://www.springframework.org/tags" />
<option value="http://www.springframework.org/security/tags" />
<option value="http://www.thymeleaf.org" />
<option value="http://www.jboss.org/j2ee/schema/" />
<option value="http://www.jboss.com/xml/ns/" />
<option value="http://www.ibm.com/webservices/xsd" />
<option value="http://activemq.apache.org/schema/" />
<option value="http://schema.cloudfoundry.org/spring/" />
<option value="http://schemas.xmlsoap.org/" />
<option value="http://cxf.apache.org/schemas/" />
<option value="http://primefaces.org/ui" />
<option value="http://tiles.apache.org/" />
<option value="http://testjenkins.fgimaxl2.vipnps.vip" />
</list>
</option>
</inspection_tool>
<inspection_tool class="PyClassHasNoInitInspection" enabled="false" level="WEAK WARNING" enabled_by_default="false" />
<inspection_tool class="PyDocstringTypesInspection" enabled="false" level="WEAK WARNING" enabled_by_default="false" />
<inspection_tool class="PyMethodMayBeStaticInspection" enabled="false" level="WEAK WARNING" enabled_by_default="false" />
<inspection_tool class="PyPackageRequirementsInspection" enabled="true" level="WARNING" enabled_by_default="true">
<option name="ignoredPackages">
<value>
<list size="61">
<item index="0" class="java.lang.String" itemvalue="pandas" />
<item index="1" class="java.lang.String" itemvalue="Faker" />
<item index="2" class="java.lang.String" itemvalue="pytest" />
<item index="3" class="java.lang.String" itemvalue="python-jenkins" />
<item index="4" class="java.lang.String" itemvalue="pytest-html" />
<item index="5" class="java.lang.String" itemvalue="allure-pytest" />
<item index="6" class="java.lang.String" itemvalue="requests" />
<item index="7" class="java.lang.String" itemvalue="urllib3" />
<item index="8" class="java.lang.String" itemvalue="pytest-assume" />
<item index="9" class="java.lang.String" itemvalue="click" />
<item index="10" class="java.lang.String" itemvalue="protobuf" />
<item index="11" class="java.lang.String" itemvalue="sanic-routing" />
<item index="12" class="java.lang.String" itemvalue="colorlog" />
<item index="13" class="java.lang.String" itemvalue="PyYAML" />
<item index="14" class="java.lang.String" itemvalue="atomicwrites" />
<item index="15" class="java.lang.String" itemvalue="cffi" />
<item index="16" class="java.lang.String" itemvalue="mitmproxy" />
<item index="17" class="java.lang.String" itemvalue="pytest-xdist" />
<item index="18" class="java.lang.String" itemvalue="MarkupSafe" />
<item index="19" class="java.lang.String" itemvalue="httptools" />
<item index="20" class="java.lang.String" itemvalue="redis" />
<item index="21" class="java.lang.String" itemvalue="pytest-forked" />
<item index="22" class="java.lang.String" itemvalue="pyOpenSSL" />
<item index="23" class="java.lang.String" itemvalue="ruamel.yaml.clib" />
<item index="24" class="java.lang.String" itemvalue="certifi" />
<item index="25" class="java.lang.String" itemvalue="pyparsing" />
<item index="26" class="java.lang.String" itemvalue="websockets" />
<item index="27" class="java.lang.String" itemvalue="pywin32" />
<item index="28" class="java.lang.String" itemvalue="xlwings" />
<item index="29" class="java.lang.String" itemvalue="pypng" />
<item index="30" class="java.lang.String" itemvalue="pydantic" />
<item index="31" class="java.lang.String" itemvalue="tornado" />
<item index="32" class="java.lang.String" itemvalue="Werkzeug" />
<item index="33" class="java.lang.String" itemvalue="iniconfig" />
<item index="34" class="java.lang.String" itemvalue="aiofiles" />
<item index="35" class="java.lang.String" itemvalue="asgiref" />
<item index="36" class="java.lang.String" itemvalue="cryptography" />
<item index="37" class="java.lang.String" itemvalue="packaging" />
<item index="38" class="java.lang.String" itemvalue="attrs" />
<item index="39" class="java.lang.String" itemvalue="chardet" />
<item index="40" class="java.lang.String" itemvalue="colorama" />
<item index="41" class="java.lang.String" itemvalue="charset-normalizer" />
<item index="42" class="java.lang.String" itemvalue="sanic" />
<item index="43" class="java.lang.String" itemvalue="allure-python-commons" />
<item index="44" class="java.lang.String" itemvalue="multidict" />
<item index="45" class="java.lang.String" itemvalue="msgpack" />
<item index="46" class="java.lang.String" itemvalue="idna" />
<item index="47" class="java.lang.String" itemvalue="openpyxl" />
<item index="48" class="java.lang.String" itemvalue="requests-toolbelt" />
<item index="49" class="java.lang.String" itemvalue="scipy" />
<item index="50" class="java.lang.String" itemvalue="thop" />
<item index="51" class="java.lang.String" itemvalue="ipython" />
<item index="52" class="java.lang.String" itemvalue="torch" />
<item index="53" class="java.lang.String" itemvalue="mss" />
<item index="54" class="java.lang.String" itemvalue="torchvision" />
<item index="55" class="java.lang.String" itemvalue="psutil" />
<item index="56" class="java.lang.String" itemvalue="tqdm" />
<item index="57" class="java.lang.String" itemvalue="pathlib" />
<item index="58" class="java.lang.String" itemvalue="tensorboard" />
<item index="59" class="java.lang.String" itemvalue="seaborn" />
<item index="60" class="java.lang.String" itemvalue="matplotlib" />
</list>
</value>
</option>
</inspection_tool>
<inspection_tool class="PyPep8Inspection" enabled="true" level="WEAK WARNING" enabled_by_default="true">
<option name="ignoredErrors">
<list>
<option value="E501" />
<option value="E402" />
<option value="E722" />
</list>
</option>
</inspection_tool>
<inspection_tool class="PyPep8NamingInspection" enabled="true" level="WEAK WARNING" enabled_by_default="true">
<option name="ignoredErrors">
<list>
<option value="N801" />
<option value="N802" />
<option value="N806" />
</list>
</option>
</inspection_tool>
<inspection_tool class="PyUnboundLocalVariableInspection" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="PyUnresolvedReferencesInspection" enabled="true" level="WARNING" enabled_by_default="true">
<option name="ignoredIdentifiers">
<list>
<option value="typing.Generator.*" />
<option value="pymysql.cursors" />
</list>
</option>
</inspection_tool>
<inspection_tool class="SpellCheckingInspection" enabled="false" level="TYPO" enabled_by_default="false">
<option name="processCode" value="true" />
<option name="processLiterals" value="true" />
<option name="processComments" value="true" />
</inspection_tool>
<inspection_tool class="SqlDialectInspection" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="SqlNoDataSourceInspection" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="SqlStorageInspection" enabled="false" level="WARNING" enabled_by_default="false" />
</profile>
</component>

View File

@ -0,0 +1,6 @@
<component name="InspectionProjectProfileManager">
<settings>
<option name="USE_PROJECT_PROFILE" value="false" />
<version value="1.0" />
</settings>
</component>

4
.idea/misc.xml Normal file
View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.8 (EasyTest-u5raha45)" project-jdk-type="Python SDK" />
</project>

8
.idea/modules.xml Normal file
View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/EasyTest.iml" filepath="$PROJECT_DIR$/.idea/EasyTest.iml" />
</modules>
</component>
</project>

6
.idea/vcs.xml Normal file
View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
</component>
</project>

View File

@ -16,30 +16,21 @@ class MysqlDB:
host=config.mysql_db.host,
user=config.mysql_db.user,
password=config.mysql_db.password,
port=config.mysql_db.port,
port=config.mysql_db.port
)
# 使用 cursor 方法获取操作游标得到一个可以执行sql语句并且操作结果为字典返回的游标
self.cur = self.conn.cursor(cursor=pymysql.cursors.DictCursor)
except AttributeError as error:
logger.error("数据库连接失败,失败原因 %s", error)
except Exception as err:
logger.error(f"数据库连接失败, {err}")
def __del__(self):
try:
# 关闭游标
self.cur.close()
# 关闭连接
self.conn.close()
except AttributeError as error:
logger.error("数据库连接失败,失败原因 %s", error)
except Exception as err:
logger.error(f'数据库关闭连接失败, {err}')
def query(self, sql, state="all"):
"""
查询
:param sql:
:param state: all 是默认查询全部
:return:
"""
""" 查询 """
try:
self.cur.execute(sql)
@ -55,20 +46,16 @@ class MysqlDB:
raise
def execute(self, sql):
"""
更新 删除 新增
:param sql:
:return:
"""
""" 更新 、 删除、 新增 """
try:
# 使用 execute 操作 sql
rows = self.cur.execute(sql)
# 提交事务
self.conn.commit()
return rows
except AttributeError as error:
logger.error("数据库连接失败,失败原因 %s", error)
# 如果事务异常,则回滚数据
except Exception as err:
logger.error(f"数据库连接失败, {err}", )
self.conn.rollback()
raise
if __name__ == '__main__':
pass