codeceptjs / CodeceptJS

Supercharged End 2 End Testing Framework for NodeJS

Home Page:http://codecept.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

run-multiple execution creates output sub folders with alphanumeric value instead of browser names

AugustineAutoGit opened this issue · comments

What are you trying to achieve?

For run-multiple execution with multiple browsers like Chrome, Safari, Firefox and Edge, the subfolder in the output folder should have a name like parallel_Chrome_1, parallel_Safari_2, parallel_Firefox_3 etc

What do you get instead?

While executing using run-multiple the subfolder in the output folder should have name like the following:
parallel_0096a0c740a073d21e23267bf167f711a9826c9d84addc417bc5b320df11e0bd_1
parallel_f7899c9a407a947a824a4955416619aef2c53bd0fbb18965b53d0a3fb4c207d6_2

instead of browser/channel name some alphanumeric value is present in the folder name.

image

This makes it difficult to do many validations. For eg:
Validating the file download using handleDownloads and FileSystem helper, like using methods I.amInPath('output/folderName');
where folderName is parallel_0096a0c740a073d21e23267bf167f711a9826c9d84addc417bc5b320df11e0bd_1.
This is only 1 example

Provide console output if related. Use --verbose mode for more details.

# paste output here

Provide test source code if related

// paste test

Details

  • CodeceptJS version: 3.5.15
  • NodeJS Version: 20
  • Operating System: Mac OS
  • Playwright (if related)
  • Configuration file:
# paste config here

I think that's supposed to be like that when you don't explicitly define the outputName
Screenshot 2024-03-22 at 10 37 29

To overcome your issue, try this approach #1722 (comment)

"multiple": {
        "dev": {
            "browsers": [
                {
                    browser: "chrome",
                    outputName: "chrome"
                },
                {
                    browser: "firefox",
                    outputName: "firefox"
                }
            ]
        }
}

Thanks @kobenguyent this fixed my issue of random hash value
For the case of:
Validating the file download using handleDownloads and FileSystem helper, like using methods I.amInPath('output/folderName');
for folderName how should we give?
say now output folders are like parallel_output_1, the runId is dynamic
I tried this way but not working:
I.amInPath('output/parallel_output_*');