Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
易企天创
zentaoatf
提交
0d8029ac
Z
zentaoatf
项目概览
易企天创
/
zentaoatf
12 个月 前同步成功
通知
11
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
3
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Z
zentaoatf
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
3
Issue
3
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
0d8029ac
编写于
2月 15, 2022
作者:
m0_58228130
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'origin/main' into main
上级
ed4052c9
c159dc63
变更
10
隐藏空白更改
内联
并排
Showing
10 changed file
with
82 addition
and
51 deletion
+82
-51
client/forge.config.js
client/forge.config.js
+6
-0
client/icon/favicon.icns
client/icon/favicon.icns
+0
-0
client/src/main.js
client/src/main.js
+13
-8
client/src/services.js
client/src/services.js
+5
-0
cmd/server/main.go
cmd/server/main.go
+5
-1
internal/server/config/log.go
internal/server/config/log.go
+39
-37
internal/server/core/web/index.go
internal/server/core/web/index.go
+4
-1
internal/server/modules/v1/controller/project.go
internal/server/modules/v1/controller/project.go
+3
-1
internal/server/modules/v1/service/project.go
internal/server/modules/v1/service/project.go
+6
-0
static/dist/index.html
static/dist/index.html
+1
-3
未找到文件。
client/forge.config.js
浏览文件 @
0d8029ac
module
.
exports
=
{
electronPackagerConfig
:
{
"
name
"
:
"
ztf2
"
,
"
icon
"
:
"
./ui/favicon.ico
"
},
packagerConfig
:
{
"
name
"
:
"
ztf
"
,
"
icon
"
:
"
./icon/favicon
"
,
extraResource
:
[
'
./bin
'
,
'
./ui
'
...
...
client/icon/favicon.icns
0 → 100644
浏览文件 @
0d8029ac
文件已添加
client/src/main.js
浏览文件 @
0d8029ac
import
{
app
,
BrowserWindow
}
from
'
electron
'
;
import
{
getUIServerUrl
,
startZtfServer
}
from
'
./services
'
;
import
{
getUIServerUrl
,
startZtfServer
,
killZtfServer
}
from
'
./services
'
;
// Handle creating/removing shortcuts on Windows when installing/uninstalling.
if
(
require
(
'
electron-squirrel-startup
'
))
{
// eslint-disable-line global-require
...
...
@@ -8,16 +8,20 @@ if (require('electron-squirrel-startup')) { // eslint-disable-line global-requir
const
createWindow
=
(
url
)
=>
{
// Create the browser window.
const
mainWindow
=
new
BrowserWindow
({
width
:
800
,
height
:
600
,
});
// const mainWindow = new BrowserWindow({
// width: 1200,
// height: 800,
// });
const
mainWindow
=
new
BrowserWindow
({
show
:
false
})
mainWindow
.
maximize
()
mainWindow
.
show
()
// and load the index.html of the app.
mainWindow
.
loadURL
(
url
);
// Open the DevTools.
mainWindow
.
webContents
.
openDevTools
();
mainWindow
.
webContents
.
openDevTools
(
{
mode
:
'
bottom
'
}
);
};
...
...
@@ -56,9 +60,10 @@ app.on('ready', startApp);
// for applications and their menu bar to stay active until the user quits
// explicitly with Cmd + Q.
app
.
on
(
'
window-all-closed
'
,
()
=>
{
if
(
process
.
platform
!==
'
darwin
'
)
{
//
if (process.platform !== 'darwin') {
app
.
quit
();
}
killZtfServer
();
// }
});
app
.
on
(
'
activate
'
,
()
=>
{
...
...
client/src/services.js
浏览文件 @
0d8029ac
...
...
@@ -37,6 +37,7 @@ export function startZtfServer() {
cmd
.
on
(
'
close
'
,
(
code
)
=>
{
console
.
log
(
`>> ZTF server closed with code
${
code
}
`
);
_ztfServerProcess
=
null
;
cmd
.
kill
()
});
cmd
.
stdout
.
on
(
'
data
'
,
data
=>
{
const
dataString
=
String
(
data
);
...
...
@@ -112,6 +113,10 @@ export function startZtfServer() {
});
}
export
function
killZtfServer
()
{
_ztfServerProcess
.
kill
(
'
SIGINT
'
);
}
let
_uiServerApp
;
export
function
getUIServerUrl
()
{
...
...
cmd/server/main.go
浏览文件 @
0d8029ac
package
main
import
(
"flag"
"github.com/aaronchen2k/deeptest/internal/pkg/lib/log"
"github.com/aaronchen2k/deeptest/internal/server/core/cron"
"github.com/aaronchen2k/deeptest/internal/server/core/dao"
...
...
@@ -16,7 +17,10 @@ import (
// @contact.url https://github.com/easysoft/zentaoatf/issues
// @contact.email 462626@qq.com
func
main
()
{
webServer
:=
web
.
Init
()
port
:=
flag
.
Int
(
"P"
,
0
,
"服务端口"
)
flag
.
Parse
()
webServer
:=
web
.
Init
(
*
port
)
if
webServer
==
nil
{
return
}
...
...
internal/server/config/log.go
浏览文件 @
0d8029ac
...
...
@@ -12,56 +12,31 @@ import (
)
func
InitLog
()
{
CONFIG
.
Zap
.
Director
=
filepath
.
Join
(
commConsts
.
WorkDir
,
CONFIG
.
Zap
.
Director
)
if
!
dir
.
IsExist
(
CONFIG
.
Zap
.
Director
)
{
// 判断是否有Director文件夹
dir
.
InsureDir
(
CONFIG
.
Zap
.
Director
)
}
c
onfig
:=
getLogConfig
()
zapC
onfig
:=
getLogConfig
()
// print to console
var
err
error
c
onfig
.
EncoderConfig
.
EncodeLevel
=
nil
c
onfig
.
DisableCaller
=
true
c
onfig
.
EncoderConfig
.
TimeKey
=
""
logUtils
.
LoggerStandard
,
err
=
c
onfig
.
Build
()
zapC
onfig
.
EncoderConfig
.
EncodeLevel
=
nil
zapC
onfig
.
DisableCaller
=
true
zapC
onfig
.
EncoderConfig
.
TimeKey
=
""
logUtils
.
LoggerStandard
,
err
=
zapC
onfig
.
Build
()
if
err
!=
nil
{
log
.
Println
(
"init console logger fail "
+
err
.
Error
())
}
// print to console without detail
c
onfig
.
DisableStacktrace
=
true
logUtils
.
LoggerExecConsole
,
err
=
c
onfig
.
Build
()
zapC
onfig
.
DisableStacktrace
=
true
logUtils
.
LoggerExecConsole
,
err
=
zapC
onfig
.
Build
()
if
err
!=
nil
{
log
.
Println
(
"init exec console logger fail "
+
err
.
Error
())
}
}
func
InitExecLog
(
projectPath
string
)
{
config
:=
getLogConfig
()
commConsts
.
ExecLogDir
=
logUtils
.
GetLogDir
(
projectPath
)
// print to exec log file
config
.
EncoderConfig
.
EncodeLevel
=
nil
config
.
OutputPaths
=
[]
string
{
filepath
.
Join
(
commConsts
.
ExecLogDir
,
commConsts
.
LogText
)}
var
err
error
logUtils
.
LoggerExecFile
,
err
=
config
.
Build
()
if
err
!=
nil
{
log
.
Println
(
"init exec file logger fail "
+
err
.
Error
())
}
config
.
DisableCaller
=
true
config
.
DisableStacktrace
=
true
config
.
EncoderConfig
.
TimeKey
=
""
// print to test result file
config
.
OutputPaths
=
[]
string
{
filepath
.
Join
(
commConsts
.
ExecLogDir
,
commConsts
.
ResultText
)}
logUtils
.
LoggerExecResult
,
err
=
config
.
Build
()
if
err
!=
nil
{
log
.
Println
(
"init exec result logger fail "
+
err
.
Error
())
}
}
func
getLogConfig
()
(
config
zap
.
Config
)
{
var
level
zapcore
.
Level
...
...
@@ -103,13 +78,40 @@ func getLogConfig() (config zap.Config) {
Level
:
zap
.
NewAtomicLevelAt
(
level
),
// 日志级别
Development
:
true
,
// 开发模式,堆栈跟踪
//Encoding: "json", // 输出格式 console 或 json
Encoding
:
"console"
,
// 输出格式 console 或 json
EncoderConfig
:
encoderConfig
,
// 编码器配置
OutputPaths
:
[]
string
{
"stdout"
},
// 输出到指定文件 stdout(标准输出,正常颜色) stderr(错误输出,红
色)
ErrorOutputPaths
:
[]
string
{
"stderr"
},
Encoding
:
"console"
,
// 输出格式 console 或 json
EncoderConfig
:
encoderConfig
,
// 编码器配置
OutputPaths
:
[]
string
{
"stdout"
,
filepath
.
Join
(
CONFIG
.
Zap
.
Director
,
"info.log"
)},
// stdout(标准输出,正常颜
色)
ErrorOutputPaths
:
[]
string
{
"stderr"
,
filepath
.
Join
(
CONFIG
.
Zap
.
Director
,
"err.log"
)},
// stderr(错误输出,红色)
//InitialFields: map[string]interface{}{"test_machine": "pc1"}, // 初始化字段
}
config
.
EncoderConfig
.
EncodeLevel
=
zapcore
.
LowercaseColorLevelEncoder
//这里可以指定颜色
return
}
// 执行日志,用于具体的测试执行
func
InitExecLog
(
projectPath
string
)
{
config
:=
getLogConfig
()
commConsts
.
ExecLogDir
=
logUtils
.
GetLogDir
(
projectPath
)
// print to exec log file
config
.
EncoderConfig
.
EncodeLevel
=
nil
config
.
OutputPaths
=
[]
string
{
filepath
.
Join
(
commConsts
.
ExecLogDir
,
commConsts
.
LogText
)}
var
err
error
logUtils
.
LoggerExecFile
,
err
=
config
.
Build
()
if
err
!=
nil
{
log
.
Println
(
"init exec file logger fail "
+
err
.
Error
())
}
config
.
DisableCaller
=
true
config
.
DisableStacktrace
=
true
config
.
EncoderConfig
.
TimeKey
=
""
// print to test result file
config
.
OutputPaths
=
[]
string
{
filepath
.
Join
(
commConsts
.
ExecLogDir
,
commConsts
.
ResultText
)}
logUtils
.
LoggerExecResult
,
err
=
config
.
Build
()
if
err
!=
nil
{
log
.
Println
(
"init exec result logger fail "
+
err
.
Error
())
}
}
internal/server/core/web/index.go
浏览文件 @
0d8029ac
...
...
@@ -56,7 +56,7 @@ type WebServer struct {
}
// Init 初始化web服务
func
Init
()
*
WebServer
{
func
Init
(
port
int
)
*
WebServer
{
serverConfig
.
Init
()
serverConfig
.
InitLog
()
i118Utils
.
Init
(
commConsts
.
Language
,
commConsts
.
AppServer
)
...
...
@@ -88,6 +88,9 @@ func Init() *WebServer {
websocketServer
:=
websocket
.
New
(
gorilla
.
Upgrader
(
gorillaWs
.
Upgrader
{
CheckOrigin
:
func
(
*
http
.
Request
)
bool
{
return
true
}}),
m
)
websocketAPI
.
Get
(
"/"
,
websocket
.
Handler
(
websocketServer
))
if
port
!=
0
{
serverConfig
.
CONFIG
.
System
.
Addr
=
fmt
.
Sprintf
(
":%d"
,
port
)
}
return
&
WebServer
{
app
:
app
,
addr
:
serverConfig
.
CONFIG
.
System
.
Addr
,
...
...
internal/server/modules/v1/controller/project.go
浏览文件 @
0d8029ac
...
...
@@ -57,7 +57,9 @@ func (c *ProjectCtrl) GetByUser(ctx iris.Context) {
projectPath
:=
ctx
.
URLParam
(
"currProject"
)
if
projectPath
==
""
{
data
:=
iris
.
Map
{
"projects"
:
make
([]
model
.
Project
,
0
),
projects
,
_
:=
c
.
ProjectService
.
ListProjectByUser
()
data
:=
iris
.
Map
{
"projects"
:
projects
,
"currProject"
:
model
.
Project
{},
"currConfig"
:
commDomain
.
ProjectConf
{},
"scriptTree"
:
serverDomain
.
TestAsset
{}}
...
...
internal/server/modules/v1/service/project.go
浏览文件 @
0d8029ac
...
...
@@ -80,6 +80,12 @@ func (s *ProjectService) DeleteByPath(pth string) (err error) {
return
}
func
(
s
*
ProjectService
)
ListProjectByUser
()
(
projects
[]
model
.
Project
,
err
error
)
{
projects
,
err
=
s
.
ProjectRepo
.
ListProjectByUser
()
return
}
func
(
s
*
ProjectService
)
GetByUser
(
currProjectPath
string
)
(
projects
[]
model
.
Project
,
currProject
model
.
Project
,
currProjectConfig
commDomain
.
ProjectConf
,
scriptTree
serverDomain
.
TestAsset
,
err
error
)
{
projects
,
err
=
s
.
ProjectRepo
.
ListProjectByUser
()
...
...
static/dist/index.html
浏览文件 @
0d8029ac
...
...
@@ -7,9 +7,7 @@
</head>
<body>
<div>
<div>
Server状态正常!
</div>
<br/>
<div>
请继续README.md中的步骤,启动并访问Client服务。
</div>
<div>
服务启动成功!
</div>
</div>
</body>
</html>
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录