Testing 不同操作系统上使用多种语言的多个应用程序';s我应该尝试一个统一的测试线束吗?

Testing 不同操作系统上使用多种语言的多个应用程序';s我应该尝试一个统一的测试线束吗?,testing,nightly-build,multiple-languages,Testing,Nightly Build,Multiple Languages,我是一个项目的最新成员,该项目融合了在Unix和Windows操作系统上用各种编程语言编写的各种应用程序。我有幸弄明白如何为所有这些不同的应用程序实现每晚的回归构建/测试 不幸的是,这些应用程序不是用TDD原则构建的,也没有任何重要的单元测试框架。我的本能在对我大喊大叫,试图避免重新发明轮子,并“尝试”找到某种方法,在这种夜间测试架构中尽可能多地重用代码 有人会如何编写共享尽可能多代码的测试用例。。当面对跨多个操作系统的多种语言时。。。并不是所有的应用程序都是Web服务,甚至不是Web应用程序,

我是一个项目的最新成员,该项目融合了在Unix和Windows操作系统上用各种编程语言编写的各种应用程序。我有幸弄明白如何为所有这些不同的应用程序实现每晚的回归构建/测试

不幸的是,这些应用程序不是用TDD原则构建的,也没有任何重要的单元测试框架。我的本能在对我大喊大叫,试图避免重新发明轮子,并“尝试”找到某种方法,在这种夜间测试架构中尽可能多地重用代码

有人会如何编写共享尽可能多代码的测试用例。。当面对跨多个操作系统的多种语言时。。。并不是所有的应用程序都是Web服务,甚至不是Web应用程序,这让情况更加复杂

我唯一的结论是,测试驱动程序和测试用例必须特定于每个应用程序,我不能有任何显著的代码重用


如果有人提出任何建议或提议,想对提出这个问题的人进行一次快速的回击,我们将表示欢迎和感谢:)

这是我以前见过的一次艰难的回击。我认为你最终将不得不在这一点上做出决定,但首先,稍微不同的方法可能会有所帮助。看起来这个应用程序已经出现了。必须有一个或多个bug库,您可以通过调查找出最常见的bug类型。应用程序通常有一个最容易出现缺陷的方面,这就是我从一些测试脚本开始的地方。实际上,您正在以任何旧的方式回归最高效的bug报告,并以任何旧的方式将这些脚本缝合在一起


一旦您了解了这个应用程序,并且在完成上述操作后很快就会了解它,您就可以开发出一个更宏大、更易于维护的应用程序或应用程序来进行测试。希望这能有所帮助。

这是我以前见过的一个困难的问题。我认为你最终将不得不在这一点上做出决定,但首先,稍微不同的方法可能会有所帮助。看起来这个应用程序已经出现了。必须有一个或多个bug库,您可以通过调查找出最常见的bug类型。应用程序通常有一个最容易出现缺陷的方面,这就是我从一些测试脚本开始的地方。实际上,您正在以任何旧的方式回归最高效的bug报告,并以任何旧的方式将这些脚本缝合在一起


一旦您了解了这个应用程序,并且在完成上述操作后很快就会了解它,您就可以开发出一个更宏大、更易于维护的应用程序或应用程序来进行测试。希望这能有所帮助。

只要我的2美分

为了相对成功地实现大规模开发人员测试,据我所知,您需要在编写测试代码时涉及整个开发


如果你能为各种应用程序和服务提供一个通用的界面,也许会给你一些进展。

只要我的2美分

为了相对成功地实现大规模开发人员测试,据我所知,您需要在编写测试代码时涉及整个开发


如果你能为各种应用程序和服务提供一个通用的界面,也许会给你一些进展。

很难说这在你的情况下有多可行。。。但是,如果您能够提出一种描述测试用例的声明性机制,也许可以使用文本文件或XML来详细说明各种用例的参数、预期输出、预期返回代码等,那就太好了。这样,如果这些测试用例在多个操作系统/环境中有效,那么您可以实现代码,为每个环境执行一次测试用例,但可以重用所有测试用例

当然,根据需要测试的界面/脚本/应用程序的复杂性,以及用数据表示测试用例的容易程度,您的里程可能会有所不同


至于编写测试用例,我以前也负责为旧的“遗留”代码编写测试,这些代码的编写并没有考虑到“可测试性”。我喜欢安德鲁的建议;使用以前的bug/回归数据将有助于找到哪些测试会给您带来最大的回报。尝试在您的团队中实施新的工程过程也是一个好主意——对于从现在开始修复的每个新bug/问题/回归,尝试添加一个能够捕获问题的测试用例。这将帮助您建立一组可证明相关的测试用例…

很难说它在您的案例中有多可行。。。但是,如果您能够提出一种描述测试用例的声明性机制,也许可以使用文本文件或XML来详细说明各种用例的参数、预期输出、预期返回代码等,那就太好了。这样,如果这些测试用例在多个操作系统/环境中有效,那么您可以实现代码,为每个环境执行一次测试用例,但可以重用所有测试用例

当然,根据需要测试的界面/脚本/应用程序的复杂性,以及用数据表示测试用例的容易程度,您的里程可能会有所不同

至于编写测试用例,我以前也负责为旧的“遗留”代码编写测试,这些代码的编写并没有考虑到“可测试性”。我喜欢安德鲁的建议;使用以前的bug/回归数据将有助于找到哪些测试会给您带来最大的回报。尝试在您的团队中实施新的工程过程也是一个好主意——对于从现在开始修复的每个新bug/问题/回归,尝试添加一个能够捕获问题的测试用例。这将帮助您建立一组可证明相关的测试用例