Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Getting Started with QuickPickle #11

Closed
orefalo opened this issue Oct 22, 2024 · 3 comments
Closed

Getting Started with QuickPickle #11

orefalo opened this issue Oct 22, 2024 · 3 comments

Comments

@orefalo
Copy link

orefalo commented Oct 22, 2024

I am reaching out due to the absence of other contact methods.

I watch a brief presentation at the Svelte Summit regarding a feature in behavioral testing.
In the hope I am addressing the correct person - David Hunt.

Here are a few questions:

  • I understand the value proposition, I have a hard time understanding how the different pieces play together
  • What is the role of Claude in your speech? is it a manual or automated translation for tests?
  • Is quick pickle stable?
  • Would you have a sample project?

If you had links to videos/tutorials/projects it would certainly help without involving much of your time.

Thank you

PS: To put context,

  • I use playwright.
  • I use cucumber in salads, not code.
  • I recently learned about gherkins.
@dnotes
Copy link
Owner

dnotes commented Oct 22, 2024

Hi Olivier! No worries this is fine. :)

  • I understand the value proposition, I have a hard time understanding how the different pieces play together
    

Yes it's a bit of a different paradigm. I'm not exactly sure what you're asking with this question, but technically what happens is:

  • you write tests (Scenarios) using Gherkin in a .feature file
  • you write step definitions using Playwright in a support file (setupFiles in Vitest config)
  • when your tests run, QuickPickle converts your .feature file to Javascript on the fly for Vitest to run
  • every Step of each Scenario runs the code in your step definition.
  • What is the role of Claude in your speech? is it a manual or automated translation for tests?
    

Claude is like a developer. The workflow that I was demonstrating was test driven development, or as it's called in the Cucumber/Gherkin world "Behavior Driven Development" or "BDD". The idea is that you first write out the behavior that you want in Feature files, and then develop for that behavior. What is nice about using AI is that it's very good at understanding the natural language that Gherkin is written in, so the two work together nicely:

  1. you write your tests using Gherkin in .feature files
  2. you ask AI to build the new functionality
  3. if you have your step definitions written correctly, you can immediately verify if that functionality is present
  • Is quick pickle stable?
    

Fairly! :) Yeah the heavy lifting is done by official and well supported projects, Vitest and Cucumber, and the test coverage for what little code there is in QuickPickle is at least reasonable.

As for the @quickpickle/playwright package, that's still more experimental, especially since there are still some issues with the Playwright code from the step definitions. If you're good at Playwright (I'm not) then I'd love your help making sure the step definitions work correctly, especially the ones that are tagged with @timeout in the feature files. I could make some issues for you if you're interested.

  • Would you have a sample project?
    

Everything from the Svelte summit is up at https://github.com/dnotes/svelte-summit-fall-2024, and I've added some notes about things that weren't clear in the video. The stuff with Claude is in dnotes/svelte-summit-fall-2024#1.

If you had links to videos/tutorials/projects it would certainly help without involving much of your time.

I'm going to be posting videos as development continues! Maybe this weekend. Any ideas about how to get the word out would be greatly appreciated. :)

@orefalo
Copy link
Author

orefalo commented Oct 23, 2024

Dear David,

Thank you for your response. Great! This project looks promising. I plan to try it on one of my open-source projects. By then, I will be happy to report any bugs or issues around playwright. However I am afraid I can't dedicate much time as an official reviewer.
I will keep an eye on the upcoming videos.
Thank you!

@dnotes
Copy link
Owner

dnotes commented Oct 27, 2024

Heya! I'm glad you're giving it a try; hope it helps you. :)

I've added a media and tutorials section at the bottom of the readme file, so hopefully those will be enough to get people started. And I'm going to close this issue; hooray #11!

@dnotes dnotes closed this as completed Oct 27, 2024
@dnotes dnotes changed the title Questions - Reaching out Getting Started with QuickPickle Oct 27, 2024
@dnotes dnotes pinned this issue Oct 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants