代码之家  ›  专栏  ›  技术社区  ›  Rob McCready

集成测试框架?

  •  2
  • Rob McCready  · 技术社区  · 16 年前

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

    我想到的初始方案是:

    1. 还原已知数据库
    2. 运行SQL代理作业(ETL)
    3. 对输出数据库执行验证SQL脚本

    1. 运行MSI安装
    2. 检查文件夹/文件/regkeys/services/etc是否存在
    3. 运行msi卸载

    到目前为止,我还没有找到任何合适的东西。主要是我们将使用的UI测试(Project White/etc),但不包括这些情况。或者基于单元测试框架的集成测试,我们还没有准备好将我们的QA团队推向这个方向。

    如果我找不到其他东西,我目前正在尝试在这部分测试中使用我们自己的内部工具。

    1 回复  |  直到 16 年前
        1
  •  4
  •   Matthew Heusser    16 年前

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

    嗯,我看到了两种方法:

    1)你可以发明你自己的领域特定语言。这是一种很花哨的说法,你用一些非常高级的函数编写一个解释器。非技术人员编写类似批处理文件的东西,然后编写一些C来读取文件,执行switch语句,然后运行命令。fit可能是实现这一点的最常见方法——它是集成测试的框架。(方法是用逗号分隔事物:command、param1、param2。假设它是一个非常简单的汇编程序。然后,switch语句接受param1..paramx并将其粘贴到字符串数组中,并将其传递给函数。函数处理数组。)

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

    所以你可以…

    2)向客户传授脚本语言。我将研究Perl和Test::更多——或者可能是一些Ruby测试工具。

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

    3)放弃让客户创建所有测试。相反,让一个工具匠与客户配对创建大纲,然后返回并将其转换为代码。

    如果你在开浏览器,我会推荐Selenium或Watir,但看起来你是命令行Y。

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

    当做,

    ——海瑟

    推荐文章