文章目錄
技術架構
前端:js+vue+element-ui
github地址:https://github.com/pencil1/ApiTestWeb
後端:python+flask+httprunner
github地址: https://github.com/pencil1/ApiTestManage
數據庫:mysql
前端部署
1、安裝windows版本的node.js
2、安裝windows版本的Python2(包括配置環境變量)
3、安裝yarn(包括配置yarn)
npm install -g yarn
yarn config set registry https://registry.npm.taobao.org -g
yarn config set sass_binary_site https://npm.taobao.org/mirrors/node-sass/ -g
4、安裝node-sass
npm install -g mirror-config-china --registry=http://registry.npm.taobao.org
npm install node-sass
5、安裝依賴的packages
yarn install
6、運行項目
yarn serve
後端部署
1、安裝windows版本的Python3(包括配置環境變量)
2、安裝項目依賴的packages
pip install -r requirements.txt
3、安裝mysql-connector
pip install mysql-connector
4、修改數據庫連接配置(config.py)
class Config:
SECRET_KEY = 'BaSeQuie'
basedir = os.path.abspath(os.path.dirname(__file__))
# sqlite數據庫的地址
# SQLALCHEMY_DATABASE_URI = "sqlite:///" + os.path.join(basedir, "data.sqlite")
SQLALCHEMY_DATABASE_URI = 'mysql+mysqlconnector://root:[email protected]:3306/api_test?charset=utf8mb4'
SQLALCHEMY_COMMIT_ON_TEARDOWN = True
SQLALCHEMY_TRACK_MODIFICATIONS = False
CSRF_ENABLED = True
UPLOAD_FOLDER = '/upload'
# DEBUG = True
SCHEDULER_API_ENABLED = True
@staticmethod
def init_app(app):
pass
class DevelopmentConfig(Config):
# SQLALCHEMY_DATABASE_URI = os.environ.get('DEV_DATABASE_URL') or 'sqlite:///' + os.path.join(basedir, 'data.sqlite')
# SCHEDULER_JOBSTORES = {'default': SQLAlchemyJobStore(url=SQLALCHEMY_DATABASE_URI)}
# 123456表示密碼,test代表數據庫名稱
SQLALCHEMY_DATABASE_URI = 'mysql+mysqlconnector://root:[email protected]:3306/api_test?charset=utf8mb4'
SCHEDULER_JOBSTORES = {'default': SQLAlchemyJobStore(url=SQLALCHEMY_DATABASE_URI,
engine_options={'pool_pre_ping': True})}
SQLALCHEMY_TRACK_MODIFICATIONS = False
SQLALCHEMY_POOL_SIZE = 100
SQLALCHEMY_POOL_RECYCLE = 1800
5、將config表的variables字段的類型修改爲TEXT(models.py)
class Config(db.Model):
__tablename__ = 'config'
id = db.Column(db.Integer(), primary_key=True, comment='主鍵,自增')
num = db.Column(db.Integer(), nullable=True, comment='配置序號')
name = db.Column(db.String(128), comment='配置名稱')
variables = db.Column(db.TEXT, comment='配置參數')
func_address = db.Column(db.String(128), comment='配置函數')
project_id = db.Column(db.Integer, db.ForeignKey('project.id'), comment='所屬的項目id')
created_time = db.Column(db.DateTime, index=True, default=datetime.now, comment='創建時間')
update_time = db.Column(db.DateTime, index=True, default=datetime.now, onupdate=datetime.now)
6、創建數據庫
create database api_test default character set utf8mb4 collate utf8mb4_unicode_ci;
7、運行項目
8、初始化數據庫
set FLASK_APP=manage.py
flask initdata
參考資料
[01] 開源啦~接口自動化測試平臺
[02] npm,yarn替換國外鏡像爲國內鏡像,安裝依賴
[03] 使用 yarn 安裝時,報錯node_modules\node sass:Command failed.
[04] 解決pip install慢的方法
[05] HttpRunner中文用戶手冊
[06] 基於 HttpRunner 的 Web 測試平臺
[07] SQLAlchemy中解決數據庫訪問時出現的Incorrect string value: xxx at row 484
[08] mysql 創建表遇到單列的長度限制 ERROR 1074 (42000) 與 行長限制 ERROR 1118 (42000)
微信掃一掃關注公衆號
點擊鏈接加入羣聊
https://jq.qq.com/?_wv=1027&k=5eVEhfN
軟件測試學習交流QQ羣號:511619105