mirror of
https://github.com/httprunner/httprunner.git
synced 2026-05-12 02:21:29 +08:00
fix: catch run error code for runner
This commit is contained in:
@@ -162,7 +162,8 @@ func (wd *wdaDriver) Screen() (screen Screen, err error) {
|
||||
}
|
||||
|
||||
func (wd *wdaDriver) GetTimestamp() (timestamp int64, err error) {
|
||||
return 0, errDriverNotImplemented
|
||||
return 0, errors.Wrap(errDriverNotImplemented,
|
||||
"GetTimestamp not implemented for ios")
|
||||
}
|
||||
|
||||
func (wd *wdaDriver) Scale() (float64, error) {
|
||||
@@ -378,7 +379,19 @@ func (wd *wdaDriver) AssertAppForeground(packageName string) error {
|
||||
}
|
||||
|
||||
func (wd *wdaDriver) GetForegroundApp() (app AppInfo, err error) {
|
||||
return AppInfo{}, nil
|
||||
// appInfo, err := wd.ActiveAppInfo()
|
||||
// if err != nil {
|
||||
// return AppInfo{}, err
|
||||
// }
|
||||
|
||||
// app = AppInfo{
|
||||
// AppBaseInfo: AppBaseInfo{
|
||||
// PackageName: appInfo.BundleId,
|
||||
// Activity: "",
|
||||
// },
|
||||
// }
|
||||
return AppInfo{}, errors.Wrap(errDriverNotImplemented,
|
||||
"GetForegroundApp not implemented for ios")
|
||||
}
|
||||
|
||||
func (wd *wdaDriver) Tap(x, y int, options ...ActionOption) error {
|
||||
|
||||
@@ -226,6 +226,7 @@ func (r *HRPRunner) Run(testcases ...ITestCase) (err error) {
|
||||
})
|
||||
}()
|
||||
|
||||
var runErr error
|
||||
// run testcase one by one
|
||||
for _, testcase := range testCases {
|
||||
// each testcase has its own case runner
|
||||
@@ -249,20 +250,20 @@ func (r *HRPRunner) Run(testcases ...ITestCase) (err error) {
|
||||
err1 := sessionRunner.Start(it.Next())
|
||||
if err1 != nil {
|
||||
log.Error().Err(err1).Msg("[Run] run testcase failed")
|
||||
err = err1
|
||||
runErr = err1
|
||||
}
|
||||
caseSummary, err2 := sessionRunner.GetSummary()
|
||||
s.appendCaseSummary(caseSummary)
|
||||
if err2 != nil {
|
||||
log.Error().Err(err2).Msg("[Run] get summary failed")
|
||||
if err1 != nil {
|
||||
err = errors.Wrap(err1, err2.Error())
|
||||
runErr = errors.Wrap(err1, err2.Error())
|
||||
} else {
|
||||
err = err2
|
||||
runErr = err2
|
||||
}
|
||||
}
|
||||
|
||||
if err != nil && r.failfast {
|
||||
if runErr != nil && r.failfast {
|
||||
break
|
||||
}
|
||||
}
|
||||
@@ -271,19 +272,19 @@ func (r *HRPRunner) Run(testcases ...ITestCase) (err error) {
|
||||
|
||||
// save summary
|
||||
if r.saveTests {
|
||||
if e := s.genSummary(); e != nil {
|
||||
return e
|
||||
if err := s.genSummary(); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
// generate HTML report
|
||||
if r.genHTMLReport {
|
||||
if e := s.genHTMLReport(); e != nil {
|
||||
return e
|
||||
if err := s.genHTMLReport(); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
return err
|
||||
return runErr
|
||||
}
|
||||
|
||||
// NewCaseRunner creates a new case runner for testcase.
|
||||
|
||||
Reference in New Issue
Block a user