问题标签 [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.
java - 模拟数据库以进行系统测试
我已阅读以下帖子:
有没有办法为 JUnit 测试用例在内存中运行 MySQL?
他们似乎解决了单元/组件级别的测试(或没有答案),但我正在对一个几乎没有测试钩子的应用程序进行系统测试。我有一个由 JPA 数据库支持的 RESTful Web 服务。我正在使用 NUnit 对 API 运行测试,但这些测试通常需要复杂的数据设置和拆卸。为了降低通过 API 调用在测试中执行此操作的成本,我想创建(理想情况下在内存中)可以使用连接字符串通过 DB 提供程序连接到的数据库。这个想法是有一个测试资源管理服务,它构建特定类型的数据库,允许测试在启动时将 SUT 重新指向一个具有预期数据的新数据库 - 一个可以在拆卸时简单地删除的数据库。
有没有办法,使用 Oracle 或 MSSQL,在内存中创建一个数据库(可能是像 C# DataSet 这样简单的东西),Web 服务器可以像生产数据库一样与之通信?老实说,快速/廉价的创建和处理与记忆一样好。
我觉得这是一个应该已经有答案的问题,但找不到它/不明白我已经找到了它。
node.js - 在用于系统测试的开源项目中保护 travis ci 环境变量
我正在构建一个为 3rd 方服务提供 API 的开源库。在此期间,我正在学习测试、git-flow 和持续部署,并遇到了一个与保护开源项目的环境变量相关的问题。
我目前已经通过 travis cli: 生成了秘密环境变量travis encrypt key=value
,用于自动化系统测试。
在将更新推送到功能分支或拉取请求时,注意到测试是由 travis ci 自动运行的,这很棒。但我开始想知道是什么保护我免受有人发出拉取请求,恶意收集process.env
对象并将其推送到外部的东西,从而暴露我宝贵的环境变量。
如何真正确保在 travis ci 中保护环境凭据(例如 API 凭据)以进行系统测试?
我什至应该创建系统测试吗?或者我应该伪造对外部服务的请求?
validation - 系统测试的操作顺序?
我昨天正在参加考试,我注意到他们询问以下发生的顺序(我将把我认为的顺序放在这里):
- 单元测试(总是先写你的单元测试!)
- 集成测试(在你有一些代码并且它与其他代码/系统一起工作之后)
- 验证测试(保持您的数据处于一致状态并确保没有输入错误数据)
- 用户/验收测试(一切都与用户有关,否则我们为什么要首先构建系统?)
这是对的吗?
就我个人而言,我认为负载测试或数据库调优应该在最后出现,但它没有在测试中。
ruby - 是否有任何支持异步测试系统的 Ruby 测试框架
我希望能够测试一个系统,在该系统中我启动一个进程,然后在该进程完成后,被测系统将异步返回消息。我希望测试框架等待响应,然后断言响应的正确性或超时,如果在特定时间范围内未收到响应,则失败。 是否有一个测试框架可以做到这一点?
在我的具体情况下,我正在等待 websocket 发布告诉我正在测试的进程已经完成 - 但我认为特定的异步消息传递协议并不重要。
testing - In testing an application, can I assume a previous test will pass in other tests?
I am testing the functionality of an application. One of the tests is to verify that the application can connect to an external source. The rest of the tests require that the application is connected. Is it all right to write a test to test for the application's ability to connect and then the other tests to assume the application can connect and have one of the test steps as "Connect to External source"?
Thanks.
java - 线程“主”java.lang.NoClassDefFoundError 中的 Cobertura 异常:net/sourceforge/cobertura/coveragedata/LightClassmapListener
我正在尝试使用 Cobertura 构建一个 jar 文件,运行该文件时出现此错误。
我下载了所有文件并将它们放在我的“/ lib”文件夹中;所以我那里有所有的 Cobertura 文件。
这是我的build.properties文件
这是我的 ant build.xml
任何类型的帮助将不胜感激。
谢谢
ruby-on-rails - 运行单系统测试
要在 Rails 中运行单个测试,我们通常这样做:
但这不适用于系统测试。这也不起作用:
使用上述两个突击队,所有系统测试(文件)都会运行。
所以我的问题是,如何运行单个系统测试?
附带说明一下,要在 Rails 中运行(所有)系统测试,您需要附加 :system
到test
.
ruby-on-rails - 如何在 Rails 5.1 中运行无头浏览器系统测试?
Rails 5.1 系统测试的文档有点少。我无法获得执行 javascript 运行的无头测试。我认为一种方法需要安装和运行 xvf。但这比我在其他版本的 rails 中运行 capybara 时更习惯于手动设置。
实现这一目标的最直接方法是什么?
java - 是否可以在不启动本地主机上的 Java 应用程序的情况下运行 selenium 测试
我正在用 selenium 编写一些系统测试用例,我想知道是否有办法在不运行 java 应用程序的情况下运行这些测试。
我运行它们的过程是:
- 我建立我的 Maven 项目
- 我写一个测试
- 运行 java 应用程序以在 8080 端口启动 localhost
- 运行我的测试用例
我想知道是否有办法不做 3,因为我正计划部署这些测试用例,并在 jenkins 中运行它们。
PS如果之前有人问过这个问题,请在评论中指出。
谢谢
ruby-on-rails - 如何在 Rails 5.1 系统测试中使用 VCR?
网络上的许多东西似乎表明 VCR 可以与 Capybara 一起使用。
我有三个问题。
- 这对我来说没有多大意义,因为测试驱动程序和应用程序代码不共享内存。
- 我没有找到关于如何设置它的完整食谱。
- 我正在寻找人们如何设置它的点点滴滴,但它超出了 rails 5.1 的上下文,它在幕后进行了 capybara 设置。
如何配置 Rails 5.1 应用程序、Capybara 和 VCR 以协同工作进行系统测试?
(我的无头浏览器是 phantomjs,由 poltergeist 驱动。但我不需要拦截来自浏览器的请求,只需要拦截服务器端请求。如果我需要从浏览器拦截,我可能会使用完整的 http 代理服务器,比如 puffing -比利。)