I can take care of porting the gesture stuff to KIF might actually get assigned to working on that at work when the app I'm working on launches around thanksgiving.
/kra
Is it possible for the KIF/Shelly and UISpec to co-exist? That seems
less risk than a complete upgrade and we could migrate the step
definitions over as we go along.
If they can't co-exist (or maybe as an alternative to keep things more
separated), how much effort would it be to provide 2 static libraries
and switch at the step/ruby level (plus having the right library
linked in)?
I'm trying to judge the maintenance costs of having two separate
branches vs. a single one that has some shelly/kif feature branches in
it. It feels to me like staying in one branch is less risky too.
Derek.
Good thoughts, thanks Dale. I did consider taking this opportunity to create a brand new selector syntax, possibly something more formalized or structured. I decided against it, at least for now. The main goal for Shelley is to remove Frank's dependency on UISpec. We can't cut the cord on UISpec unless existing Frank users have a clear and easy migration path.
I do like the idea of being able to specify a selector engine - kinda like choosing between XPath or CSS when doing web testing. Maybe we should extend the map command to do that as part of the Shelley migration, rather than adding a brand new command. As you point out, most of the command would be shared.
One area I definitely am looking for input on is what this hypothetical selector syntax would look like. Something css-like would possibly lower the barrier to entry. Something xPath like would be quite terrifying for a lot of people, but could lend itself to more advanced stuff like selecting parents, siblings and cousins (something that css is lacking I think).
Does anyone have any good examples on any other similar syntaxes other than css and XPath that might serve as inspiration?
Also, Dale, would be interested to hear what quirks you're noticing in Shelley. If they're for backwards compatibility then so be it, but if not then I'd like to know so I can fix 'em :)
How is progress on the Shelly branch going? Is this something that's
mature enough that I could start playing around with it and looking at
migrating? It seems that the API (e.g. frank_helper) should be able
to stay the same, no?
- Jon
On Oct 14, 12:54 pm, Pete Hodgson <phodg...@thoughtworks.com> wrote:
> Hi Franksters,
>
> I'd like to talk about removing Frank's dependency on UISpec. I've been
> wanting to do this for a while, and I suspect others have too. UISpec was a
> great starting point for Frank, but I feel that we've pushed it as far as is
> reasonable. It seems to be a pretty much unmaintained library at this point.
> The implementation is.... idiosyncratic, and quite hard to work with. An
> example being the long timeout issue that several people have tried and
> failed to fix. I believe that there are now alternatives to UISpec which are
> simpler, fuller featured, and undergoing active forward development.
>
> Frank uses UISpec for two different things. We use it to perform view
> selection via its selector syntax, and we use it to simulate interactions
> (touches, gestures, etc). I have been experimenting with using alternative
> libraries to achieve the same functionality. It appears to be pretty trivial
> to use KIF's UIView additions in order to simulate interactions. I've spoken
> with the KIF maintainers and they are very happy for Frank to use KIF's
> code. We're agreed that it would be a win-win for both projects. Regarding
> view selection, I've been working on a library called Shelley which allows
> view selection using the same selector syntax as UIQuery. It is a little
> tricky to get exact backwards compatibility because of the way that UIQuery
> is implemented, but I think I have a pretty good implementation at this
> point. It even has unit tests, ZOMG. You can see the current implementation
> on the shelley branch of my github
> repo<https://github.com/moredip/Frank/tree/shelley>