集成测试框架?

时间:2009-04-23 20:38:36

标签: testing frameworks automated-tests black-box

我正在寻找一个测试框架来涵盖我们的黑盒集成测试。我们需要非开发人员可编写的东西(也就是C#单元测试类型的东西)。

我想到的最初方案是:

  1. 恢复已知数据库
  2. 运行sql代理作业(ETL)
  3. 针对输出数据库执行验证sql脚本
    1. 运行msi install
    2. 检查文件夹/文件/ RegKeys /服务/等的存在
    3. 运行msi uninstall
    4. 到目前为止,我还没有找到任何合适的东西。主要是UI测试(Project White / etc),我们将使用但不包括这些情况。或者基于单元测试框架的集成测试,我们尚未准备好推动我们的QA团队。

      如果我找不到其他任何内容,我正在尝试为这部分测试推出自己的内部工具。

1 个答案:

答案 0 :(得分:4)

看起来你想要运行一堆命令行参数,对吗?

好吧,我认为有两种方法可以做到:

1)您可以创建自己的特定于域的语言。这是一种花哨的方式,你说你用一些非常高级的函数编写一个解释器。非技术人员编写类似批处理文件的东西,然后编写一些C#来读取文件,执行switch语句,然后运行命令。 FIT可能是最常用的方法 - 它是集成测试的框架。 (这样做的方法是用逗号分隔:command,param1,param2。假装它是一个非常简单的汇编程序。然后你的switch语句使用param1..paramx并将它们粘贴在一个字符串数组中并将其传递给函数该函数处理数组。)

问题在于您的客户需要变量。他们想要循环。很快,您已经实现了一个完整的编程解释器,它以columner格式读取数据。那很臭。

所以你可以......

2)向客户传授脚本语言。我会研究perl并测试:: more - 或者可能是一些ruby测试的东西。

如果这不起作用,也许你可以......

3)放弃让客户创建所有测试。相反,让工具库与客户配对以创建轮廓,然后返回并将其转换为代码。

如果您正在驾驶浏览器,我建议使用selenium或watIR,但它看起来像是命令行y。

给我发一封电子邮件(matt.heusser@gmail.com)或在我的博客(xndev.blogspot.com)上阅读测试框架以获取更多信息。我的博客是第2个搜索结果,询问谷歌什么是测试框架,所以我很乐意推荐它。 : - )

的问候,

- heusser