Dear ed,
Specification by Example is just a tool that may help you to create right software. And it is mostly collaboration tool. It may not fit to your process and your team, and that’s OK.
If your team don’t see the advantages of Sbe, maybe they just don’t have “shared understanding”? Of course, if you were on the SbE workshop and the rest of your team – not, where this “shared understanding” can come from? :D
SbE is not about automation, it’s about communication. If your team have enough communication to develop right software – than you don’t need to change anything.
You wrote: “using jasmine for unit testing (not using SbE, hard to read for the business)”.
Is that really a problem that business cannot read the tests? Would the “business” read the tests if they become more readable?
If you cannot sell SbE to your team all together, try to split it on separate techniques and sell one by one.
As the first step, you could write some tests (key examples) and share (discuss) those tests with the developers (3 Amigos). It should not be “The comprehensive specification”, it should be “Hey guys, that’s how I am planning test that!”.
The next step is changing the language of the “specifications” from English to Gherkin.
The testers can start using Gherkin to describe the bugs in the bug tracker. So everybody will be forced to be familiar with Gherkin.
Then you can say, “hey guys, this bug seems to be a missed requirement, let’s automate it!”.
About your question on Specifications for UI. Each UI action has some behavior under the hood.
You can say:
When I press button with text “1”
And press button with text “+”
And press button with text “1”
And press button with text “=”
Then the text box “R” should have value “2”
Or you can say:
When I sum two numbers: 1 + 1
Then the Result should be 2
If you need to implement a simple validation for required fields or max field length – forget about BDD/Sbe. Just write a test.
You are right -- it would be better to write such test with jasmine, but
twist is also acceptable. Does it work?
Is it useful?
If yes – than it is acceptable.
Hope it will help
~ Dmitry