Giter VIP home page Giter VIP logo

storywright's Issues

provide storybook compatibility table

Current Behaviour:

Currently it's impossible to understand what Storybook version is supported with storywright

Expected Behaviour:

Provide official documentation what Storybook versions are supported with particular storywright release range

provide changelogs for releases

Current Behaviour:

Currently it's impossible to understand the changes reflected within releases which makes upgrading a hit n miss.

Expected Behaviour:

Ship CHANGELOG.json that documents every release

Storywright fails when storyStoreV7 is enabled

Steps to Reproduce:

  1. Set up a project using Storybook 7 or higher with the default configuration.
  2. Create a story utilizing the StoryWright decorator.
  3. Build the Storybook.
  4. Execute StoryWright.

Actual Result:

StoryWright fails, producing the following output:

$ storywright  --browsers chromium --url dist/storybook --destpath dist/screenshots --waitTimeScreenshot 500 --concurrency 4 --headless true
================ StoryWright params =================
Storybook url = file:////.../dist/storybook
Screenshot destination path = dist/screenshots
Browsers = chromium
Headless = true
Concurrency = 4
Cores available on system  = 16
SkipSteps = false
WaitTimeScreenshot = 500
Parse DOM = false
Compress DOM = false
================ Starting story right execution =================
StoryWright processor started @  2024-07-25T13:04:40.569Z
Starting browser test for chromium
** ERROR ** Error: page.evaluate: Error: extract called before initialization
    at StoryStore.extract (file:///.../dist/storybook/sb-preview/runtime.js:47:11685)
    at StoryStore.raw (file:///.../dist/storybook/sb-preview/runtime.js:47:13415)
    at ClientApi.raw (file:///.../dist/storybook/sb-preview/runtime.js:79:408)
    at eval (eval at evaluate (:226:30), <anonymous>:1:28)
    at eval (<anonymous>)
    at UtilityScript.evaluate (<anonymous>:226:30)
    at UtilityScript.<anonymous> (<anonymous>:1:44)
Closing process !!
StoryWright took  0 secs to complete.
StoryWright processor completed @  2024-07-25T13:04:40.959Z

Opting out of on-demand story loading somewhat works, although it is not a default setting and it's not documented in StoryWright documentation.

Expected Result

StoryWright should successfully capture screenshots for stories using a standard Storybook v7+ configuration.

Storywright silently fails with Storybook 8

Storywright relies on the deprecated __STORYBOOK_CLIENT_API__?.raw() to get a list of stories. In Storybook 8 this already deprecated API was removed. Rather than throwing, Storywright just silently falls back to an empty array and makes the error hard to notice.

[Bug] StoryWright fails to fetch Steps when hooks are used in story

Issue:

  • Whenever a hook is used within a story, StoryWright considers the Steps object as undefined and does not take a screenshot. Only a static screenshot is taken.

Expected Behavior:

  • A static screenshot AND a screenshot with the Steps executed are taken.

Steps to Reproduce:

  1. Clone repro branch https://github.com/TristanWatanabe/fluentui/tree/storywright-hooks-bug
  2. Run yarn workspace @fluentui/react-components vr:build
  3. Run yarn workspace @fluentui/react-components vr:test
  4. Observe dist/screenshots folder and see issue - only a static screenshot is taken (Component.Example With Hook.chromium.png). Comment out the useStyles() invocation in the story in the src/stories/Example/Example.stories.tsx file and re-run steps 2 and 3 to see the expected behavior where BOTH static screenshot and a steps screenshot are taken.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.