自动测试VBA UserForms-工具和/或技术?

时间:2009-01-27 12:47:46

标签: excel testing vba automated-tests regression-testing

我希望在一个相当大的Excel加载项上开始自动回归测试,该加载项围绕一个由几个带有标准控件的模态UserForms组成的GUI。

主要问题是我调查过的大多数自动化测试工具(Rational Robot ,AutomatedQA TestComplete ,Network Automation Automate 等) )不完全支持VBA控件,因此他们的测试最终会重放鼠标点击和按键,所以不能真正维护。理想情况下,我需要一个识别VBA表单控件的测试工具,所以我可以说“按下此按钮并等待此列表框更改”而不是“单击(237,58)并等待500毫秒”。

我还考虑将测试自动化作为VBA构建到加载项中,但是用户的大部分时间都花在与模式对话框的交互上,该模式对话框阻止VBA在后台运行,因此这几乎是不可能的。 / p>

我的问题 - 这里的任何人都有使用自动化测试工具的经验吗

a)识别VBA用户表单控件并可以可靠地与它们交互

b)是否支持使用条件分支和成功/失败日志记录的测试脚本,而不仅仅是记录和回放?

或者,是否有人知道我可以解决暂停VBA执行的模式对话问题的方法,以便我可以在VBA中驱动加载项?

我花了一些时间浏览QA论坛,但没有找到任何东西,所以任何帮助或线索都会受到赞赏。

感谢您的帮助,

-Martin

1 个答案:

答案 0 :(得分:2)

我不知道有什么工具可以做你说的话,但是你想过从不同方向进行攻击吗?

我在这里猜测一下,有多少逻辑可以被推入“普通”VB / VBA类,以便单个方法可以进行单元测试。也许这样的类可能会暴露事件,甚至,为了测试,您可以用提供必要刺激的测试工具替换表单并收集响应以进行检查。

它不会解决(现在非常轻量级)表单本身与底层类的连接,但它至少会最小化未经测试的区域。

我真的只是“大声”思考,但你认为这会起作用吗?