代码之家  ›  专栏  ›  技术社区  ›  Frank V

vbscript、ASP代码和SQL Server 2000的单元测试

  •  7
  • Frank V  · 技术社区  · 16 年前

    我在(经典)ASP和SQL Server 2000中实现了一个非常老的项目。由于质量问题,我一直在考虑实现某种形式的自动化质量测试的可能性。虽然网页是ASP,但该项目实际上是85%的SQL Server存储过程、函数、视图和DTS。(大量依赖于DTS)SQL Server会生成大量代码。

    关于DTS,我们希望 upgrade the database to SQL Server 2005 --所以,如果不能在dts上设置单元测试,那么ssis呢?

    我找到了 ASPUnit 但它似乎不再被维护了…

    至于我的问题,它实际上是一个多部分的问题。

    1. 单元测试ASP是否可行?
    2. 单元测试SQL Server对象是否可行?( 我在这方面看到了一些成功,但也看到了一些挫折。 )
    3. 当前是否有支持的测试框架可用于ASP和SQL Server?
    4. 是否有其他软件质量控制方法来单元测试这种类型的代码库?(任何一般性的建议也会有帮助。谢谢。)
    5. 另外,我一直在考虑在这样的项目中实现自动化测试的投资回报率。这个项目很大。我不知道有多少代码,但有数百个文件,数千行(如果不是数百万行)的代码。鉴于此,我们回到1和3。

    我对这个项目真的很不满意,任何一般的质量控制建议都会非常感谢…

    4 回复  |  直到 15 年前
        1
  •  3
  •   chills42    16 年前

    听起来你的问题实际上比单元测试要高。我认为您的主要问题最好在集成测试级别解决。

    由于您的页面主要是由SQL生成的,所以ASP单元测试只会覆盖一小部分问题,因此您可以使用自动化工具(如 watin ieunit/ .

    您可以从单元测试的角度来考虑这些问题,但它们实际上是在集成后测试最终结果,而不是测试较小函数的结果。尽管您可能会错过一些较低级别的更改,但您正在绕过基础设计问题。

    只要最终结果保持不变,测试就不关心该区域的内容是来自ASP还是SQL。

        2
  •  5
  •   Les    16 年前

    华汀会很好的。它操纵浏览器,所以它不关心代码是用什么语言编写的,也不关心代码是好是坏,或者是为可测试性而设计的。它是回归测试,而不是单元测试。但那是一个很好的起点。

    您可以使用您选择的单元测试工具:nunit、mbunit、mstest等。

        3
  •  1
  •   Michal    16 年前

    你可以看看 ajaxed unit tests . (图书馆仍在维护)

        4
  •  0
  •   jyoungdev Thilo    15 年前

    对于SQL升级本身(以及对SQL代码的任何其他更改),我将查看SQL单元(还没有使用它)或类似于仅在数据库上实现单元测试的内容。

    您可以在选择任何其他测试策略的同时执行此操作。

    请注意通过UI进行测试的缺点: http://blog.objectmentor.com/articles/2010/01/04/ui-test-automation-tools-are-snake-oil . 理解通过UI进行的测试通常是脆弱的,当设计人员想要做出他们应该可以做的更改时。但是,对于严格升级SQL版本,您应该可以。

    推荐文章