【问题标题】:Maintaining large numbers of Concordion scripts维护大量的 Concordion 脚本
【发布时间】:2014-11-06 19:13:21
【问题描述】:

我目前在一家大型组织工作,我们的 IT 部门有大约 2000 名开发人员。我们维护了很多东西,包括我们的电子商务平台,目前有大约 30 个项目正在影响它。

最近,我们所有的团队都被指示使用 Concordion 和 Selenium Webdriver 交付一系列自动化测试。一段时间以来,这一直进展顺利,并且已经创建了许多测试,但最近在我们的电子商务平台不断变化的同时维护现有测试有点像一场噩梦。我们有数千个测试脚本,覆盖了我们网站的许多部分,但 Concordion 中似乎没有任何工具可以将脚本拆分为可重复使用的隔间,然后可以维护一次,而不必为一次更改更改数百个 HTML 文件.

其他人是如何处理这个问题的?

【问题讨论】:

    标签: bdd concordion


    【解决方案1】:

    Concordion 的目标不是将测试脚本实现为 HTML,而是让 HTML 描述您正在测试的行为(您想要实现的目标)。实现细节(如何测试它)作为 Java 代码实现。然后可以使用适当的抽象级别来构造此代码,以便对被测系统的每次更改只需要更改代码的一部分。

    您的 HTML 规范应该只在业务规则发生变化的极少数情况下才需要更改。

    Concordion 主页的Hints and Tips 选项卡上进一步描述了这些概念。

    【讨论】:

      【解决方案2】:

      感谢您与我们分享您的经验。很高兴听到/阅读有关行为驱动开发/规范的大规模应用的示例。

      可以帮助您的一种方法是关注关键示例 (http://gojko.net/2014/05/05/focus-on-key-examples)。在规范研讨会期间,整个团队都在努力对新的用户需求和要求达成共识。然后您继续编写包含关键示例的规范文档。在那里你不应该试图涵盖所有内容,而只写尽可能多的例子来表达共同的理解。 此外,您应该尝试识别示例所基于的概念。是否有一些与类似主题相关的示例——这可能是一个基本概念。如果这些示例只关注一个概念(例如卡号的验证),通常更容易理解这些示例。每个概念通常只用几个例子来描述。

      您还有其他类型的自动化测试(例如单元测试)吗?您是否遇到与这些其他测试相同的可维护性挑战?您能否使用这些其他测试类型的良好做法来改进您的 Concordion 方法?

      您能告诉我们更多有关您的设置的信息吗?您已经在公司内创建了多少有效规范?

      【讨论】:

      • 您好,感谢您的详细解答。我们的后端代码通常经过很好的单元测试。遗留代码往往会在单元测试方面出现问题,因为一个类中的更改有时会导致错误级联到其他类。不幸的是,我们还没有实现测试优先策略,所以我们只有在 jUnit 导致构建失败后才真正更改它们。我们正在使用 Concordion 和 Selenium WebDriver 的组合来测试我们的前端。有一些代码链接到存根环境中。我们公司目前有几千种规格。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-09
      • 2011-08-04
      • 2022-12-12
      相关资源
      最近更新 更多