by

Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Aug 08 07:04
    stale[bot] closed #28
  • Aug 08 06:56
    wswebcreation closed #40
  • Aug 08 02:30
    stale[bot] labeled #38
  • Aug 08 02:30
    stale[bot] labeled #40
  • Aug 08 02:30
    stale[bot] commented #38
  • Aug 08 02:30
    stale[bot] commented #40
  • Jul 25 03:25
    stale[bot] labeled #28
  • Jul 25 03:25
    stale[bot] commented #28
  • Jul 21 06:43
    wswebcreation commented #45
  • Jul 21 06:42
    wswebcreation labeled #45
  • Jul 21 06:42
    wswebcreation assigned #45
  • Jul 20 13:45
    stwippie edited #45
  • Jul 20 13:41
    stwippie opened #45
  • Jul 19 06:17

    wswebcreation on master

    Update stale.yml (compare)

  • Jul 19 06:17
    wswebcreation reopened #31
  • Jul 19 06:17
    wswebcreation unlabeled #31
  • Jul 18 08:07
    stale[bot] closed #31
  • Jul 04 08:06
    stale[bot] labeled #31
  • Jul 04 08:06
    stale[bot] commented #31
  • Jun 27 05:59

    wswebcreation on master

    chore: update baseline and deps (compare)

vishnuvardhanb86
@vishnuvardhanb86
using "wdio-image-comparison-service": "^1.13.6",
"webdriverio": "^6.1.12"
Wim Selles
@wswebcreation

Hi @vishnuvardhanb86

Can you share your complete config file, it looks like the service has not been correctly implemented

wbigno
@wbigno
When taking screenshots of justbthe elements, and changing the viewports it seems like the screenshot is being taken before the veiwport has completely changed. So my comparisions throw random huge mismatches. Ive tried browser pause, but that both isnt ideal nor does it always help. Anyway have any experience with this?
Wim Selles
@wswebcreation
Nope, you just need to wait until the viewport resize is done
vishnuvardhanb86
@vishnuvardhanb86
Screen Shot 2020-06-12 at 9.01.56 AM.png
Please find the config file screenshot for your reference - Sorry, couldn't share the complete file
Wim Selles
@wswebcreation
This looks good, but this is still a small portion
Can you also show some logs?
if you would run it with logLevel='debug' and see if there is a service issue?
vishnuvardhanb86
@vishnuvardhanb86
yeah sure let me check thank you will let you know
vishnuvardhanb86
@vishnuvardhanb86
Screen Shot 2020-06-12 at 9.11.12 AM.png
Screen Shot 2020-06-12 at 9.11.33 AM.png
Please check the basic script written and the failure below for your reference
Wim Selles
@wswebcreation
This is not with logLevel debug
vishnuvardhanb86
@vishnuvardhanb86
Screen Shot 2020-06-12 at 10.17.31 AM.png
Can you check whether this would help
Wim Selles
@wswebcreation
Still doesn't look like the debug level
vishnuvardhanb86
@vishnuvardhanb86
If you see the below screenshot I have already set the logLevel debug but still not sure what else should I provide can you let me know
Screen Shot 2020-06-12 at 10.58.59 AM.png
Wim Selles
@wswebcreation

Hmm, strange

Can you create a sample repo for me, then I can debug it

vishnuvardhanb86
@vishnuvardhanb86
yeah sure let me do that
Wim Selles
@wswebcreation
👍🏻, send me a PM when you have it
Will check it tomorrow, it's already weekend here 😂
vishnuvardhanb86
@vishnuvardhanb86
yeah sure tq
Mohsen
@mohsenny

I'm having a strange issue: I have installed the "wdio-image-comparison-service": "^1.13.6", I do see the package and all its functions in the node_modules/wdio-image-comparison-service, but when I run the tests, I'm getting the "browser.checkFullPageScreen is not a function" (or all the other functions related to the "wdio-image-comparison-service" module).

I'm just trying to run the basic example that's in wdio's website.

Any clue what I'm missing?

Wim Selles
@wswebcreation

Hi @mohsenny

Can you share you complete config here? It looks like the service is not implemented properly or some other service is overwriting it.

Mohsen
@mohsenny
Hey @wswebcreation, it's a big one and not all of it fits here:
exports.config = Object.assign(
  {},
  ENV_SPECIFIC_CONFIG,
  {
    Config,
    specs: allSpecs,
    suites: {
      seo: [`${pathToTests}seo.js`],
      job_detail: [`${pathToTests}job_detail.js`],
      job_search: [`${pathToTests}job_search.js`],
      application: [`${pathToTests}application.js`],
      navigation: [`${pathToTests}navigation.js`],
      career_page: [`${pathToTests}career_page.js`],
      career_page_redirect: [`${pathToTests}career_page_redirect.js`],
      cookie_banner: [`${pathToTests}cookie_banner.js`],
      cookie_navigation: [`${pathToTests}cookie_navigation.js`],
      localisation: [`${pathToTests}localisation.js`],
      amp: [`${pathToTests}amp.js`],
      serp_register: [`${pathToTests}serp_register.js`],
      bookmarks: [`${pathToTests}bookmarks.js`],
      all: allSpecs,
    },
    deprecationWarnings: false,
    sync: true,
    logLevel: 'error',
    coloredLogs: true,
    bail: 0,
    baseUrl: process.env.HOST_URL || 'http://www.heyjobs.localhost:3001',
    waitforTimeout: ci ? 20000 : 30000,
    connectionRetryTimeout: 12500,
    connectionRetryCount: 2,
    services: docker ? 
    [
      ['image-comparison', 
        // The options
        {
            // Some options, see the docs for more
            baselineFolder: join(process.cwd(), './tests/sauceLabsBaseline/'),
            formatImageName: '{tag}-{logName}-{width}x{height}',
            screenshotPath: join(process.cwd(), '.tmp/'),
            savePerInstance: true,
            autoSaveBaseline: true,
            blockOutStatusBar: true,
            blockOutToolBar: true,
            // ... more options
        }
      ] 
    ]: 
    [
      [
        'selenium-standalone', 
        'image-comparison', 
        {
            // Some options, see the docs for more
            baselineFolder: join(process.cwd(), './ui-tests/baseLine/'),
            formatImageName: '{tag}-{logName}-{width}x{height}',
            screenshotPath: join(process.cwd(), '.tmp/'),
            savePerInstance: true,
            autoSaveBaseline: true,
            blockOutStatusBar: true,
            blockOutToolBar: true,
            // ... more options
        }
      ], 
    ],

isn't it enough to have the

'image-comparison', 
        {
            // Some options, see the docs for more
            baselineFolder: join(process.cwd(), './ui-tests/baseLine/'),
            formatImageName: '{tag}-{logName}-{width}x{height}',
            screenshotPath: join(process.cwd(), '.tmp/'),
            savePerInstance: true,
            autoSaveBaseline: true,
            blockOutStatusBar: true,
            blockOutToolBar: true,
            // ... more options
        }

in the services ?

Wim Selles
@wswebcreation
Looks like you're not starting the service properly
    services: [
        ['image-comparison',
        // The options
        {
            // Some options, see the docs for more
            baselineFolder: join(process.cwd(), './tests/sauceLabsBaseline/'),
            formatImageName: '{tag}-{logName}-{width}x{height}',
            screenshotPath: join(process.cwd(), '.tmp/'),
            savePerInstance: true,
            autoSaveBaseline: true,
            blockOutStatusBar: true,
            blockOutToolBar: true,
            // NOTE: When you are testing a hybrid app please use this setting
            isHybridApp: true,
            // Options for the tabbing image
            tabbableOptions:{
                circle:{
                    size: 18,
                    fontSize: 18,
                    // ...
                },
                line:{
                    color: '#ff221a', // hex-code or for example words like `red|black|green`
                    width: 3,
                },
            }
            // ... more options
        }],
    ],
image-comparison is part of a new array inside of the service array
The first occurrence of the new array is the name of the service, in this case image-comparison, the second occurrence is the object with all the options
So
services: [
  [
    'image-comparison', 
    {
      // the options
    }
  ]
]
Mohsen
@mohsenny
Oh, what a silly mistake. Not sure how I missed that.
Thank you for finding it out, and apologies for posting a mistake completely unrelated to your service!
Wim Selles
@wswebcreation
@mohsenny
No problem, this happens
Please let me know if there is anything else I can help with
Mohsen
@mohsenny

I went a bit further, and locally everything's fine.
On circleCI however, the baseline (that's generate and committed on my local machine) seems to be slightly different than the actual screenshot, taken by the CI:
The base line: https://imgur.com/a/2zXEaas
The actual: https://imgur.com/a/tOhcRUN
The diff: https://imgur.com/a/OoxLefy

expected 87.43 to equal 0

What do you think?

Wim Selles
@wswebcreation

@mohsenny

You need to compare Apples with Apples, not with Androids, meaning you need to have a specific CI baselinr to compare with

See the note into he read me, the second one
Secondly you can only execute visual comparison on screenshots that have been taken with the same platform. For example, the screenshot on a Mac with Chrome can't be used to compare the same page on a Ubuntu or Windows with Chrome.
You need to compare Apples with Apples, not Apples with Windows
Mohsen
@mohsenny
alright, that's fair enough. Thanks a lot for the info!
Wim Selles
@wswebcreation
sure, np
Sean El-Sayed
@seanuleh
Hey hopefully an easy one. It seems that diffs with checkScreen on iOS automatically ignore the address bar and bottom nav bar (maybe not the bottom one since this is static), but is it possible to get it to hide these bars in the produced images?
Wim Selles
@wswebcreation

Hi @seanuleh

No, that's not prossible (yet). It takes a screenshot of the complete screen, not a viewport screenshot

Sean El-Sayed
@seanuleh
There doesn't happen to be a secret function that just takes a screenshot of the viewport is there? :P
Wim Selles
@wswebcreation
Well, yeah there is
but I've seen it only removes the notification bar, not the addressbar and toolbar
so I didn't implement that one
vishnuvardhanb86
@vishnuvardhanb86
Can someone please help me implementing Visual Regression testing in Saucelabs documentation o
Wim Selles
@wswebcreation

@vishnuvardhanb86

What's the question?