我们有一个.NET应用程序(VB / VS2010),该项目已经运行了大约2年。没有任何基于测试方法的开发方法,例如没有单元测试等。由于各种时间和金钱的限制,我们无法在后见之明做到这一点。
到目前为止,测试是手动完成的,正如您所期望的那样耗费时间。
应用程序本身基于.NET 4.0,基于WinForms和一些第三方Forms组件用VB编写。
我们真正需要的是一种自动化测试工具。该应用程序包含约100个不同的屏幕。还实现了一种高级授权概念,即GUI元素有时会变灰或不可见,具体取决于用户的权限。
这里有人可以推荐一种好的测试方法或一个好的测试工具吗?理想情况下,测试工具不会非常昂贵,尽管这显然是相对的。任何建议都是理所当然的优点和缺点。
提前全部谢谢!
答案 0 :(得分:0)
如果您有足够的编程技能进行自动化测试的专用QA,我的建议是使用 Selenium (http://seleniumhq.org/)。基本上它提供了测试记录,但我的建议是编写功能UI测试代码以便可重用。这是项目自动化测试的良好开端。您提到的所有验证都与禁用某些控件有关,具体取决于用户权限或控件的不可见性,可以使用Selenium Automation测试用例。我在Java中使用它,但正如您在手册中看到的那样,它可以与其他编程语言一起使用。
我在练习中使用的其他工具是 Rational Functional Tester ,但由于Selenium是免费的,因此RFT不是。它是一个基于eclipse的IDE,允许您开发Java自动化测试脚本。适用于大多数浏览器。还有一个测试录制功能,但我不再推荐它。 RFT的好处是你不需要从头开始你的项目,但你有一个文件和工件组织的样本方式。 RFT中有一些细节会花费你一段时间进行调查。
其他非常简单和现代的UI自动化测试方法是 Sikuli (http://sikuli.org/)。这种方法使您能够在屏幕上搜索模式(图像),对这些模式执行操作和验证。
当然,更重要的是如何组织自动化,然后使用哪种自动化技术。我的建议是从应用程序的基本流程开始,并涵盖首先需要时间手动执行的方案。优先考虑测试并从最重要的开始实现自动化。涉及重大商业案例的那些。