问题标签 [system-testing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2423 浏览

testing - junit套件测试,分阶段:所有@Before,然后所有@Test,然后所有@After

我想要一个执行所有@Before 方法、然后是所有@Test 方法、然后是所有@After 方法的junit runner。

这就是我的系统测试的工作方式。@Before 方法运行,以设置测试数据和场景。应用程序已启动。然后@Test 方法与在后台运行的应用程序一起运行。这些@Test 方法可以更改数据或响应应用程序。然后框架等待应用程序完成。之后,运行@After 方法来验证测试结果。

我已经使用了 junit 注释、断言方法和其他各种位。但我就是想不通如何使用junits runners以这种方式执行测试方法。我无法在 junit 4.8 中制作“计算机”界面的正面或反面,或者弄清楚如何将规则应用于此。

0 投票
3 回答
2804 浏览

asp.net-mvc - 如何在 Asp.net MVC 中编写集成和系统测试

我的应用程序

我有一个看起来像这样的应用程序设计:

  • Web 应用程序层 - asp.net MVC 应用程序,带有使用 POCO 和调用服务的控制器和视图
  • 服务层 - 使用 POCO 和调用存储库的业务流程
  • 数据层 - 使用 POCO 并以 EF 模型形式与模型通信的存储库,EF 模型是同一层的一部分
  • POCO 层 - 定义用于这些层之间的相互通信的所有类

所以我的数据层对数据模型实现是完全透明的,因为上层根本不使用数据实体。

测试

据我所知,单元、集成和系统测试(与 Asp.net MVC 相关)是这样的:

  • 单元测试——这很简单。模拟解耦对象并将它们注入您的单元测试中,以便测试单元将使用它们
  • 集成测试 - 应该创建一组生产功能单元并模拟其余部分:因此编写集成测试来测试控制器、服务和存储库集成,而无需实际使用生产数据库
  • 系统测试 - 在所有层上运行测试而不进行任何模拟,这意味着我也必须使用生产(测试)数据库

问题

我可以很容易地看到如何编写单元测试以及系统测试,但我不知道如何编写集成测试?也许我对这些的看法完全被扭曲了,我根本不理解它们。

应该如何为 Asp.net MVC 应用程序编写集成和系统测试?
或者任何.net应用程序?

Some code that helps explain the problem

Suppose I have classes like:

  • TaskController calls into TaskService
  • TaskService calls into TaskRepository
  • TaskRepository manipulate EF data internally

So here are my (abbreviated) classes:

Unit test is simple and would look like this:

But when it comes to an integration test, how do I mock only certain parts of the integration.

First of all I can't just mock database here? I could mock repository and have real service and controller though...

0 投票
1 回答
1327 浏览

testing - 好的系统测试报告的例子?

我正在写一些软件系统测试结果的报告,正在寻找灵感。有没有我可以模仿我的测试报告的真正好的例子?

请注意,这是系统测试,而不是单元测试。我正在接受测试用例,以各种方式在我的系统中运行它们,并对结果进行真值和回归测试。

我需要一种很好的方法来可视化所有这些信息并使其有用。

0 投票
1 回答
187 浏览

spring - 我应该在 Spring 项目中包含系统测试吗?

我的 Spring Web 项目包括:

  1. 实用类;
  2. 存储库;
  3. 服务;
  4. 控制器。

测试如下:

  1. 实用程序类的单元测试;
  2. 使用 HSQLDB 对存储库进行春季集成测试;
  3. 使用模拟存储库对服务进行单元测试;
  4. 带有模拟服务的控制器的单元测试。

也可能有测试整个项目功能的系统测试。它可以使用 Selenium 等外部工具执行,也可以使用 Spring 集成测试执行。

问题是,我应该在项目中包含这样的 Spring 集成系统测试,还是应该以某种方式将它们分开?

我发现在项目中包含系统测试有两个问题: 1. 它们需要配置调整,因为这样的测试不会与生产配置一起运行(例如,测试需要本地数据源,而不是来自 JNDI 的数据源);2.他们不是自治的,他们需要一些外部资源等等。我不能像往常一样运行它们的单元测试。

你如何组织你的系统测试?

0 投票
1 回答
89 浏览

django - 测试 Django 驱动的 Web 应用程序

我有一个 Web 应用程序,可以打开和关闭服务器上的后台进程。我想模拟多个用户登录和退出站点以及按下所有按钮(一般交互)。我正在测试一般的应用程序以及后台进程的处理情况。

是否有我应该查看的特定库来模拟 Web 客户端?这是系统级测试,而不是单元测试..我认为。

0 投票
2 回答
965 浏览

junit - 在junit中配置系统测试

我们目前有一个专门的工具用于在我们的 Web 服务上运行系统测试,但我一直在考虑将其重写为可在 jUnit4 中托管。

这将给我们带来几个优势,包括 Java 设置和断言结果的全部功能,以及运行测试的更简单的方法(来自 CI 和 IDE)。

但是,测试需要配置一个 URL 来测试(目前初始化本地 servlet 进行测试太不切实际了)。鉴于此,尝试在 jUnit 中托管它仍然是一个好主意吗?如果是这样,添加配置的最佳方法是什么?

0 投票
2 回答
334 浏览

unit-testing - 自动化测试用例执行 - 何时停止

我们的系统有大约 100 个测试用例。我们正在尝试为它构建一个自动化测试套件。

在运行测试时说第 25 次测试失败。我们的自动化测试系统应该在这里退出并停止执行,还是应该将其标记为失败并继续尝试从 26 日开始执行测试用例(即每个测试周期将执行所有 100 个测试用例,而不管任何失败的测试用例)。

当然,在失败的测试用例(例如 25 号)之后,如果需要重置系统以执行 26 号以后的测试用例,它将得到处理。

谢谢

詹姆士

0 投票
2 回答
287 浏览

testing - Codeblocks IDE 的单元、集成、系统测试

我最近获得了一个基于 Codeblocks IDE 的项目的控制权。该项目由大型 make 脚本、摩托罗拉微控制器的 gcc 和示例 C 程序组成。代码在 subversion 源代码控制下,但没有测试脚本。

我想知道基于 Windows 的软件的最佳测试包是什么。我想要启动软件、打开项目和编译的能力。然后,我会在输出目录中查找特定文件、二进制文件等。我可以为此任务提供专用 VM。

我想知道是否有比完全启动 IDE 并单击菜单更好的测试方法。

我希望这个项目是在考虑测试驱动开发的情况下组装的,但现在我被迫在之后添加测试。

感谢您提供的任何建议

0 投票
3 回答
1233 浏览

jquery - JQuery & IE8 崩溃检测

我最近被要求帮助调试一个导致 IE8 在某些情况下崩溃的网站问题。拥有该网站的公司无法重现该问题,但他们收到了许多受影响用户的报告。

我能够重现该问题,并最终发现它是由这个 jQuery/IE 8 问题引起的。当body使用 CSS 将背景图像应用于标签并加载 jQuery 时,会出现此问题。一篇关于 jQuery bug 票证评论的帖子提供了这个 jsFiddle 示例,至少对我来说,它始终如一地重现了这个问题。

我遇到的问题是在测试环境中可靠地复制它。任何人都可以建议测试这种事情的方法吗?尽管复制了 jsFiddle 示例使用的确切代码,但我无法在本地始终如一地重现该问题 - 它可能依赖于特定的时间,但我不确定。我想在自动测试套件中添加一些东西来检查这个问题(之前已经应用了 jQuery 修复,但在以后的版本中意外删除了)。

如何测试浏览器崩溃?该站点是用 Perl 编写的,并且使用 Selenium 和 WWW::Mechanize 进行了一些自动化测试。

注意:我考虑在Pro Webmasters上发布此内容,但在阅读了常见问题解答后,我认为它更适合 SO。

0 投票
1 回答
364 浏览

java - 系统测试的测试框架

我正在寻找一个测试框架(最好是在 Java 中)来创建系统测试。我需要测试的系统是一个 ESB,它提供多个用于接收和推送消息的 http 端点、一个 JMS 服务器和一个 JBoss-Application 服务器,最后有一个数据库。我想创建测试场景,定义传入 ESB 的消息、应该发送到请求的响应以及数据库中的预期值。

链条是:

但是也:

测试应该作为 JUnit 测试来实现,或者以一种可以被 Hudson 触发的方式来实现。如果还可以测试交换的 JMS 消息,那就太好了。我曾经使用适合需求的框架,但这是在另一家公司,而且,它是自己编写的,有时会让人感到痛苦。我知道我不是唯一一个需要类似东西的人这 =)