codeceptjs / codeceptjs/CodeceptJS

Cannot grab browser logs on failure with multiple workers - question

Đang mở
#2,818 1 bình luận 0 reaction 0 người được giao Xem trên GitHub
enhancement
Ngôn ngữ chính
JavaScript
Star
4.2k
Fork
757
Merge trung bình
2 ngày 9 giờ
Pull request đã merge (30 ngày)
16

Mô tả

#### What are you trying to achieve?

I want to grab browser logs when some test failed, tests are run using command: `./node_modules/.bin/codeceptjs run-workers 2 --grep "@sometesttag" --plugins allure`

And I see that custom hook:

```
event.dispatcher.on(event.test.failed, async (test, error) => {

})
```

inside which I use `await I.grabBrowserLogs();` is not working when we use multiple workers. (when we use `run-workers` command, with `run` this code works OK)

Tried also surround some part of the code with `try / catch` block and call `await I.grabBrowserLogs();` on error, but it does not work either.

Is this possible to make it working, simply to grab logs from browser on test failure (i.e. some element is not clickable on the page, or it is not in DOM), when we are using multiple workers? FYI - with standard `run` command I am using custom hook and it works like a charm. And I would like to achieve something similar but when multiple workers are used. Is this possible? I believe it might be doable using https://codecept.io/parallel/#custom-parallel-execution but then, I assume that browser control must be customized as well, and then we simply won't be able to use built-in method on `I` actor, right?

### Details

* CodeceptJS version: `3.0.5`
* NodeJS Version: `12.20.2`
* Operating System: macOS Catalina
* puppeteer

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.