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

Introduce acceptance spec harness #150

Open
Systho opened this issue Jan 3, 2020 · 3 comments
Open

Introduce acceptance spec harness #150

Systho opened this issue Jan 3, 2020 · 3 comments
Assignees
Labels

Comments

@Systho
Copy link
Contributor

Systho commented Jan 3, 2020

I volunteer for introducing an acceptance spec "harness"

  • a structured way of organizing spec/support in order to have specific subfolder for specific support stereotypes
  • amending rails_helper in order to autoload some of the newly introduced helpers and configuration
  • introduction of SitePrism : a small gem for cretaing page objects, making acceptance spec much more flexible and robust
  • writing a first acceptance spec story in order to illustrate how to correctly write those in a narrative way, making those more time resistant by not relying on low level details.

If this makes sense to you, I can work on a PR but I will need a short story about an actual added value in the form of 5 to 20 steps, with only actions done described from the user perspective, the last step can be a verification step.

eg:

  • I login as an admin
  • I go to the admin panel
  • I create a new rebel
  • I edit the newly created rebel
  • I update the newly created rebel
  • I search the rebels according to the update
  • The updated rebel is in the search results
@mhulet
Copy link
Member

mhulet commented Jan 9, 2020

Hi @Systho, sorry for the radio silence these days, slow (and calm) start for the year. I'm now back to the Rebels Manager 🙌

So, this is super interesting. I have started the project without specs because I wanted us to go fast, but now we definitely need to increase the test coverage as much as working on new features.

I didn't want to dive into feature specs yet (if we are speaking about the same topic, to be honest I don't know -- my own experience with tests is yet limited), is this the same? But the scenario that you give as an example is absolutely relevant and can be a first one.

I would say:

  • I login as a local coordinator (= a user linked to a local group)
  • I create a new rebel
  • I edit the newly created rebel (new name)
  • I update the newly created rebel
  • I search for the rebel name according to the update
  • The updated rebel is in the search results

@Systho
Copy link
Contributor Author

Systho commented Jan 9, 2020 via email

@mhulet
Copy link
Member

mhulet commented Jan 9, 2020

Damn, there is always something new to learn. Could this computer world stop evolving someday, so that we can just sit down and relax? 😅

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants