GUI 测试工具 PyUseCase 与 Dogtail 相比如何?

问题描述

GUI测试工具PyUseCase如何重命名为StoryText.比较 Dogtail?

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.

有兴趣:

  • 测试代码的可维护性
  • 它们与真正的 GUI 相比效果如何?

解决方案

首先:我是 PyUseCase 的作者,除了玩 Dogtail 之外,我什么也没做...

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 在 Linux 上通过 Gnome 下的可访问性界面工作,而 PyUseCase 通过 GUI 工具包(当前版本中的 PyGTK、Tkinter、SWT/Eclipse 以及即将发布的新版本中的 Swing)运行

  • 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 非常努力地被非程序员使用.UI 操作以用户定义的域语言定义,断言被生成和比较纯文本描述所取代.它还包含一个记录器.

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 是一种更传统的编写 Python 代码、调用 API、断言返回的内容"的范例,如果您习惯于编程和单元测试,这可能是一种更熟悉的做事方式.

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 努力使在 GUI 更改时更改测试变得非常容易.测试代码是超级可维护的,因为没有 :) 你会得到一个UI 映射文件",而这只是定义.

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.

最后,我不确定 Dogtail 有多活跃.上次我看起来似乎最后一次提交是在 2009 年,但外表可能会欺骗...似乎更活跃一些.

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 在任何情况下都是活跃的,我们两个人都在全职工作.它在我们的真实的 GUI 上运行良好,但它的成熟度因不同的工具包而异.

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.

相关文章