How does the GUI testing tool PyUseCase compare to Dogtail?

杀马特。学长 韩版系。学妹 提交于 2019-12-07 07:23:51

问题


How does the GUI testing tool PyUseCase renamed to StoryText. compare to Dogtail?

I want to hear from people who have hopefully experience in using both.

Interested in:

  • Maintainabilty of the testing code
  • How well they work against real GUI's?

回答1:


Firstly: I'm the author of PyUseCase and I haven't done more than play around with Dogtail...

The tools are different in a number of respects.

  • Dogtail works via the accessibility interface under Gnome on Linux, while PyUseCase operates via GUI toolkits (PyGTK, Tkinter, SWT/Eclipse in the current release, plus Swing from the soon-forthcoming new release)

  • PyUseCase tries very hard to be usable by non-programmers. UI actions are defined in a user-defined domain language, assertions are replaced by generating and comparing plain text descriptions. It also contains a recorder.

    Dogtail is a more traditional "write Python code, call APIs, assert things about what you get back" paradigm, likely a more familiar way to do things if you're used to programming and unit testing.

  • PyUseCase tries hard to make it very easy to change the tests en masse when the GUI changes. The testing code is super-maintainable, because there isn't any :) You get a "UI map file" instead which is just definitions.

  • Lastly, I'm not sure how active Dogtail is. Last time I looked it seems the last commit was in 2009, but appearances can deceive... If you want something like Dogtail, I'd suggest taking a look at the Linux Desktop Testing Project (LDTP) which is a pretty similar concept but seems a good bit more active.

    PyUseCase is in any case active, to the tune of two of us working on it full time. It works pretty well on our real GUIs, but its maturity varies between the different toolkits.



来源:https://stackoverflow.com/questions/7975211/how-does-the-gui-testing-tool-pyusecase-compare-to-dogtail

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!