https://github.com/HttpRunner/HttpRunnerManager前端
基於HttpRunner的接口自動化測試平臺: HttpRunner
, djcelery
and Django
_. HttpRunner手冊: http://cn.httprunner.org/python
拉代碼下載mysql
ubuntu@MITTE-SERVER:/opt$ git clone https://github.com/HttpRunner/HttpRunnerManager.git
Cloning into 'HttpRunnerManager'...
remote: Enumerating objects: 1, done.
remote: Counting objects: 100% (1/1), done.
remote: Total 3313 (delta 0), reused 0 (delta 0), pack-reused 3312
Receiving objects: 100% (3313/3313), 36.25 MiB | 971.00 KiB/s, done.
Resolving deltas: 100% (2154/2154), done.
Checking connectivity... done.git
安裝mysql數據庫服務端(推薦5.7+),並設置爲utf-8編碼,建立相應HttpRunner數據庫,設置好相應用戶名、密碼,啓動mysqlgithub
在MySQL安裝目錄的 bin 目錄下執行命令:
mysqld --initialize --console
執行完成後,會打印 root 用戶的初始默認密碼,好比:sql
2018-06-15T08:35:07.750836Z 0 [System] [MY-013169] [Server] G:\Tools\mysql\mysql-8.0.11-winx64\mysql-8.0.11-winx64\bin\mysqld.exe (mysqld 8.0.11) initializing of server in progress as process 9716
2018-06-15T08:35:22.138130Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: Lf#HW/=jZ1g:
2018-06-15T08:35:30.402889Z 0 [System] [MY-013170] [Server] G:\Tools\mysql\mysql-8.0.11-winx64\mysql-8.0.11-winx64\bin\mysqld.exe (mysqld 8.0.11) initializing of server has completed數據庫
注意!執行輸出結果裏面有一段: [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: rI5rvf5x5G,E 其中root@localhost:後面的「rI5rvf5x5G,E」就是初始密碼(不含首位空格)。在沒有更改密碼前,須要記住這個密碼,後續登陸須要用到。
要是你手賤,關快了,或者沒記住,那也沒事,刪掉初始化的 datadir 目錄,再執行一遍初始化命令,又會從新生成的。固然,也可使用安全工具,強制改密碼,用什麼方法,本身隨意。django
在MySQL安裝目錄的 bin 目錄下執行命令:
mysqld --install [服務名]
後面的服務名能夠不寫,默認的名字爲 mysql。固然,若是你的電腦上須要安裝多個MySQL服務,就能夠用不一樣的名字區分了,好比 mysql5 和 mysql8。
安裝完成以後,就能夠經過命令net start mysql啓動MySQL的服務了。經過命令net stop mysql中止服務。經過命令sc delete MySQL/mysqld -remove卸載 MySQL 服務json
在MySQL安裝目錄的 bin 目錄下執行命令:
mysql -u root -p
這時候會提示輸入密碼,記住了上面第3.1步安裝時的密碼,填入便可登陸成功,進入MySQL命令模式ubuntu
在MySQL中執行命令:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密碼';
修改密碼,注意命令尾的;必定要有,這是mysql的語法
到此,安裝部署就完成了。官方說測試速度MySQL8比5快兩倍
mysql> select user,host,authentication_string from mysql.user;
+------------------+-----------+-------------------------------------------+
| user | host | authentication_string |
+------------------+-----------+-------------------------------------------+
| mysql.infoschema | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| mysql.session | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| mysql.sys | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| root | localhost | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
+------------------+-----------+-------------------------------------------+
4 rows in set (0.00 sec)
管理員root的host是localhost,表明僅限localhost登陸訪問。若是要容許開放其餘ip登陸,則須要添加新的host。若是要容許全部ip訪問,能夠直接修改爲「%」
建立用戶:
CREATE USER 'lamw'@'%' IDENTIFIED WITH mysql_native_password BY 'xxh123!@#';
#(須要注意:mysql8.0加密方式修改了)
#檢查用戶
select user, host, plugin, authentication_string from user\G;
受權遠程數據庫
#受權全部權限
GRANT ALL PRIVILEGES ON *.* TO 'xxh'@'%';
#受權基本的查詢修改權限,按需求設置
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER ON *.* TO 'xxh'@'%';
查看用戶權限
show grants for 'xxh'@'%';
例如:新建用戶
CREATE USER 'lamw'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
登陸的時候 ip地址用localhost 能夠用root登陸,填寫本機ip沒法登陸,不知是啥問題致使
密碼123456
修改:HttpRunnerManager/HttpRunnerManager/settings.py裏DATABASES字典和郵件發送帳號相關配置
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'HttpRunner', # 新建數據庫名
'USER': 'root', # 數據庫登陸名
'PASSWORD': 'lcc123456', # 數據庫登陸密碼
'HOST': '127.0.0.1', # 數據庫所在服務器ip地址
'PORT': '3306', # 監聽端口 默認3306便可
}
}
EMAIL_SEND_USERNAME = 'username@163.com' # 定時任務報告發送郵箱,支持163,qq,sina,企業qq郵箱等,注意須要開通smtp服務
EMAIL_SEND_PASSWORD = 'password' # 郵箱密碼
service rabbitmq-server start 小編這邊執行這句的時候報錯了,其實安裝好rabbitmq直接能夠登陸了
安裝rabbitMQ以前,須要先安裝Erlang
http://www.erlang.org/downloads
1.安裝Erlang
因此在安裝rabbitMQ以前,須要先安裝Erlang 。
小編使用的是otp_win64_20.3 ,須要其餘版本或者32位系統的,能夠去官網下載。
所有點擊「下一步」就行
有的選擇其餘的安裝方式,可能須要添加一下系統環境變量(正常安裝的也要檢查下):
(1):下載erlang,緣由在於RabbitMQ服務端代碼是使用併發式語言erlang編寫的,下載地址:http://www.erlang.org/downloads,雙擊.exe文件進行安裝就好,安裝完成以後建立一個名爲ERLANG_HOME的環境變量,其值指向erlang的安裝目錄,同時將%ERLANG_HOME%\bin加入到Path中,最後打開命令行,輸入erl,若是出現erlang的版本信息就表示erlang語言環境安裝成功;
2.安裝RabbitMQ
下載運行rabbitmq-server-3.7.6 ,須要其餘版本或者32位系統的,能夠去官網下載。
依舊能夠不改變默認進行安裝。
須要注意:默認安裝的RabbitMQ 監聽端口是5672
3.配置
激活 RabbitMQ's Management Plugin
使用RabbitMQ 管理插件,能夠更好的可視化方式查看Rabbit MQ 服務器實例的狀態。
打開命令窗口:
輸入命令:
"G:\Tools\rabbitMQ\RabbitMQ Server\rabbitmq_server-3.7.6\sbin\rabbitmq-plugins.bat" enable rabbitmq_management
執行這個命令的時候一直報錯,關閉cmder從新打開就能夠了
帳號密碼均是guest
djcelery.setup_loader()
CELERY_ENABLE_UTC = True
CELERY_TIMEZONE = 'Asia/Shanghai'
BROKER_URL = 'amqp://guest:guest@127.0.0.1:5672//' # 127.0.0.1即爲rabbitmq-server所在服務器ip地址
CELERYBEAT_SCHEDULER = 'djcelery.schedulers.DatabaseScheduler'
CELERY_RESULT_BACKEND = 'djcelery.backends.database:DatabaseBackend'
CELERY_ACCEPT_CONTENT = ['application/json']
CELERY_TASK_SERIALIZER = 'json'
CELERY_RESULT_SERIALIZER = 'json'
CELERY_TASK_RESULT_EXPIRES = 7200 # celery任務執行結果的超時時間,
CELERYD_CONCURRENCY = 10 # celery worker的併發數 也是命令行-c指定的數目 根據服務器配置實際更改 默認10
CELERYD_MAX_TASKS_PER_CHILD = 100 # 每一個worker執行了多少任務就會死掉,我建議數量能夠大一些,默認100 #小編並未對這段代碼作修改
(須要在G:\Tools\軟件安裝包\Httprunner\HttpRunnerManager-master\HttpRunnerManager-master目錄下 複製requirements.txt 到G:\Tools\Python\Python36\Scripts目錄下,PS:這裏須要注意的是 小編一開始用3.7,各類報錯,因此建議是用3.6 )
python manage.py makemigrations ApiManager #生成數據遷移腳本
python manage.py migrate #應用到db生成數據表
若是遇到
報:Django migrate No changes detected
去數據庫查看沒有生成相應表格, 刪除migrations/ __pycache__的 __pycache__文件夾
而後執行
python manage.py migrate
python manage.py createsuperuser
python manage.py runserver 0.0.0.0:8000
python manage.py celery -A HttpRunnerManager worker --loglevel=info #啓動worker
python manage.py celery beat --loglevel=info #啓動定時任務監聽器
celery flower #啓動任務監控後臺
訪問:http://localhost:5555/dashboard 便可查看任務列表和狀態
瀏覽器輸入:http://127.0.0.1:8000/api/register/ 註冊用戶,開始盡情享用平臺吧
瀏覽器輸入http://127.0.0.1:8000/admin/ 輸入步驟6設置的用戶名、密碼,登陸後臺運維管理系統,可後臺管理數據