我正在寻找一种自动化测试工具。我将使用脚本进行测试,而不仅仅是自动化,这意味着它不能只发送一些按键。它需要检查应用程序的窗口以查看它是否已正确更新。越便宜越好,成本没有下行限制。 ; - )
我需要一种真正的语言,包括函数,变量,循环,分支等,应用程序是用Delphi开发的。
我需要能够集中控制 * ,等待窗口出现,搜索控件/窗口,发送键盘输入并检查各种窗口/控件是否已更改状态(例如按钮是现在禁用,文本框包含正确的文本,打开一个对话框等。)。
几年前我曾经使用过AutoIt,现在又回到脚本了。我想知道在我离开的时候是否有任何新的发展。
有什么建议吗?
* 我不希望在应用程序的布局发生变化时将光标移动到绝对坐标。此引用from Wikipedia解释了原因:
回归测试也成为GUI的问题。这是因为GUI可能会在应用程序的各个版本之间发生显着变化,即使底层应用程序可能不会。设计为遵循通过GUI的特定路径的测试可能无法遵循该路径,因为按钮,菜单项或对话可能已经改变了位置或外观。
答案 0 :(得分:8)
我相信你刚才描述了TestComplete by SmartBear Software。
答案 1 :(得分:6)
我在sikuli取得了一些成功,它具有python(jython)代码的优势。它建立在OpenCV之上,并使用完整的图像处理引擎来模拟匹配屏幕的各个部分。它还包含截图,等待更改以及击键和鼠标注入的编辑器和函数。
答案 2 :(得分:6)
自动执行您列出的所有内容。我一直用它来做同样的海豚。此外,Delphi在使用标准的Windows控件方面很好,这使得它很容易挂钩。
答案 3 :(得分:3)
答案 4 :(得分:1)
为了自动化delphi应用程序主要问题,我发现任何测试工具(带有delphi插件的QTP,测试完成,Testanywhere,autoit,sikuli)他们都没有检测到任何Tlabels和Tlist以及其他组件,这对于应用程序来说在delphi中构建是UI的重要组成部分。即使要进行基于func的测试,我们也需要最终检查前端的一个组件,看看func是否正在提供。即使要使脚本自动化,我们也需要首先能够检测并将对象添加到存储库中。
我们有一个应用程序,其中我们严重依赖于许多第三方组件。我试图用市场上几乎所有可用的工具检查可行性。 市场上最畅销的两种工具毫无用处。
使用Delphi插件的QTP是没有用的,即使在他们公开提到它不支持在delphi中构建的许多类的网站上也没有用。
TestComplete它比QTP更好,它在里面检测到很多组件菜单组件,如果我没记错网格等。
然后经过几次谷歌搜索我找到了
当我谈到检测组件时,它可能是部分或完全的,即一些工具能够检测到XY坐标上有一个组件但是未能获得组件类或细节(如组件属性名称等),没有它们自动化和编写脚本很困难。
休息全部或多或少是上面这些的组合或子集。
仍在搜索!!!!!!!!!!!
答案 5 :(得分:1)
使用TestComplete,如果您将应用程序编译为打开的应用程序 - 即包含他们的库,它会使您的应用程序超级可检查。非常适合测试,可能不是最好的安全性。测试完成是最好的,我的预算只是贵了。
其中的脚本很棒,对Delphi的理解很棒。 pricetag并不是很好,特别是如果你想在一个组织内获得GUI测试的牵引力,就像听起来像你一样。