标签: system-testing

是否有用于记录/监控系统测试的好工具?

我正在寻找一种工具来设计,记录和监控产品的系统测试.

我需要的基础知识是:1)一种工具,可以代表测试之间的某种继承(即,一个测试设置另一个或某些).

2)一个工具,允许我单独监控每个版本的特定测试运行(即,对于产品的1.1版,我们从所有记录的测试中运行这些特定测试).

3)一种工具,它允许某种自由形式的"标记"测试(即,我可以将相同的测试分成几组:回归测试,功能测试,ui测试......一次测试可以一次全部三次).

4)可选 - 该工具将允许我运行"自动测试"脚本(使用内部开发的自动化系统自动化,因此它必须允许多种方式与之配合).

我发现可能有用的一个工具是:http://trac-hacks.org/wiki/TestCaseManagementPlugin

它具有使用Trac的额外好处,我们开始使用它来进行错误跟踪/任务跟踪.如果有人可以推荐(或给出一个不使用它的充分理由),也会非常感激.

谢谢

testing trac system-testing

7
推荐指数
1
解决办法
228
查看次数

如何停止DataTables实例已启动的所有当前正在进行的Ajax查询?

简要描述;简介

将测试服务器重置为已知状态会导致我的测试失败,因为DataTables实例在服务器重置时正在启动Ajax请求.我想通过在重置服务器之前停止DataTables请求来防止这种情况.

详细说明

我有一个应用程序,我在一些页面上使用DataTables.这些DataTable都执行服务器端查询以填充其表.

当我执行系统测试时,有时会出现竞争条件:

  1. 测试运行器启动测试服务器.

  2. 测试运行器在测试浏览器中加载一个页面,其上有一个DataTable实例.

  3. 测试运行器运行测试,执行检查并结束.

  4. 测试运行器将测试服务器重置为已知状态以进行下一次测试.

  5. 页面上显示警报,表示DataTables遇到Ajax错误.警报说:

DataTables警告:table id = [some id] - Ajax错误.有关此错误的更多信息,请参阅http://datatables.net/tn/7

  1. 我的测试系统,虽然测试实际上是成功的,但是它不会引起警报,并且会记录失败.(或者在某些情况下,它会崩溃.)

我知道这是因为服务器突然中断了Ajax请求.我正在寻找的是一种防止警报首先出现的方法.我想在服务器重置之前停止所有正在进行的DataTables请求.

解决方案已被拒绝

  • 告诉DataTables实例不要使用警报:如果DataTables实例遇到与重置测试服务器无关的问题,我希望我的测试失败.

  • 修改测试服务器:我宁愿保持服务器简单,不用担心关于可能置之不理请求.

  • 在客户端等待所有请求结束:这可能会大大减慢测试速度,尤其是当数次测试重复此等待时.

  • 将测试浏览器指向一个没有DataTables的新页面,因为这将中断当前请求:这将再次损害测试性能.

javascript ajax jquery datatables system-testing

6
推荐指数
2
解决办法
4605
查看次数

如何自动化 Firebase FCM 推送通知发送集成测试

我有一个在 Java Cloud Function 中运行的进程,并使用Firebase admin sdk向 Firebase 的 FCM 发送通知。

我目前正在使用模拟 FCM 类的单元测试对此进行测试。

我想添加系统级测试来验证集成是否正常工作。理想情况下,我想执行云函数并断言 FCM(或模拟服务)收到包含预期内容的请求。

我目前已经尝试过。

  • 模拟 FCM:由于 FCM 客户端使用GOOGLE_APPLICATION_CREDENTIALS进行初始化,因此似乎无法提供凭据以便客户端将请求发送到模拟服务。
  • 注册 Android 客户端并断言通知接收:设置非常麻烦,在某些情况下可能需要几分钟时间,导致不稳定。
  • 使用 Firebase Local Emulator Suite:它似乎还不支持 FCM。

这样做的最好方法是什么?

integration-testing system-testing firebase google-admin-sdk firebase-cloud-messaging

6
推荐指数
0
解决办法
406
查看次数

Java中的系统测试框架

在java中寻找系统测试的框架.我们有一个在tomcat(Spring,Hibernate等)下运行的Web应用程序,它有一个定义良好的API,可以很容易地以RMI(或任何其他方式)公开.

我们想测试这个API.框架应测试正在运行的服务器.测试将由Jenkins触发,或由开发人员或QA Automation运行.

大多数测试都是由开发人员编写的,因此我们希望它们与他们熟悉的类似(java,以上列出的所有技术).性能测试能力是一个优势.

任何成功/失败的故事或提示将不胜感激.

java testing system-testing

5
推荐指数
1
解决办法
3343
查看次数

如何自动运行大量的perl脚本?

我需要在Windows上运行超过100个perl脚本(由前员工编写)以进行系统稳定性测试.每个脚本都有几个函数,每个函数都会向我们的后端系统发送一些linux命令,并返回结果.结果写入日志文件(当前每个脚本都有一个日志文件).结果是"成功","失败".

一个接一个地运行这些perl脚本正在耗费我的时间.我正在考虑编写一个批处理文件来自动化它,但我必须解析结果文件以生成测试报告.我在网上搜索,似乎有几个测试框架,比如Test :: Harness,Test :: More,Test :: Most都是不错的选择.虽然根据我的理解,他们只使用.t文件,我们的脚本是普通的perl脚本(.pl),而不是标准的perl测试脚本(.t脚本).如果使用,例如,Test :: Harness,我应该将所有perl脚本从.pl更改为.t,并将它们放在t文件夹下吗?如何在Test :: Harness中调用我的函数?有人可以建议一种更好的方法来自动化测试过程并生成像Test :: Harness那样的测试报告吗?我想一个例子将非常有用.

testing perl automated-tests system-testing

5
推荐指数
1
解决办法
790
查看次数

chromecast 接收器应用程序的自动化系统测试

我想知道是否有一种对 Chromecast 接收器应用程序进行自动化系统测试的好方法?

如果您在 Chrome 浏览器中打开应用程序 URL,cast_receiver 库在以下位置找不到 websocket 连接:

ws://localhost:8008/v2/ipc
Run Code Online (Sandbox Code Playgroud)

由于它处理应用程序和 Chromecast 硬件之间的通信,我正在考虑类似 Node.js websocket 服务器的东西,它可以与 chromecast 接收器应用程序通信。有没有这样的系统,或者有谁知道谷歌是否有计划为这种测试发布一些东西?

另外,chromecast浏览器和chrome浏览器的区别会不会有其他问题?据我了解,chromecast 浏览器只是 chrome 的一个子集,这让我觉得它应该可以工作。

automated-tests system-testing google-cast chromecast

5
推荐指数
1
解决办法
1064
查看次数

功能规格和系统规格之间的区别

功能规格系统规格之间有区别吗?两者似乎都使用Capybara来测试整个应用程序,但是RSpec上有不同的文档。

rspec ruby-on-rails system-testing capybara

5
推荐指数
1
解决办法
822
查看次数

单独运行时,Rails密码重置测试通过,但在运行整个测试套件时失败

我正在测试使用Clearance身份验证gem的密码重置流程,但是我无法弄清楚如何编写一个在运行整个测试套件时通过的测试。当我单独运行它时,该测试通过,但是当我运行整个测试套件时,该测试失败,并且失败:

Capybara::ExpectationNotMet: expected "/users/467591525/password/edit?token=8fd60112cf461061eb405632f35e08a3830f661c" to equal "/users/467591525/password/edit"
Run Code Online (Sandbox Code Playgroud)

我首先尝试将其作为系统测试来进行,这是我进行其他所有此类测试的地方。那个在里面test/system/user_password_reset_test.rb,它继承自ApplicationSystemTestCaseas class UserPasswordResetTest < ApplicationSystemTestCase

但是当我单独运行该测试作为系统测试时,会收到相同的错误消息。

如果我将其切换到集成测试,class PasswordResetTest < ActionDispatch::IntegrationTest则在单独运行时会通过测试,但Capybara::ExpectationNotMet在运行整个测试套件时会因相同的错误而失败。

这是完整的测试:

require 'application_system_test_case'

class PasswordResetTest < ActionDispatch::IntegrationTest

  def setup
    clear_emails
    @user = users(:lee)
  end

  test 'User can reset their password' do
    perform_enqueued_jobs do
      visit sign_in_path
      assert_current_path sign_in_path
      click_link 'Forgot Password'
      assert_current_path new_password_path
      assert_title 'Password reset | Flagship'
      assert_selector 'h1', text: 'Reset your password'
      fill_in('Email', with: @user.email)
      click_button 'Reset password'
      assert_current_path passwords_path
      assert_selector 'h1', text: …
Run Code Online (Sandbox Code Playgroud)

integration-testing ruby-on-rails minitest system-testing capybara

5
推荐指数
1
解决办法
70
查看次数

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

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

在运行测试时说第25次测试失败.我们的自动化测试系统应该在这里拯救并停止执行,或者它应该只是将其标记为失败并继续尝试执行第26次测试用例(即每个测试周期都将执行所有100个测试用例,而不管任何失败的测试用例).

在失败的测试用例(例如,没有25)之后,如果系统需要被重置以执行测试用例26,那么它将被处理.

谢谢

詹姆士

testing integration-testing automated-tests unit-testing system-testing

4
推荐指数
1
解决办法
326
查看次数

验收测试和系统测试之间的区别?

它们是一样的吗?或者,系统测试由测试人员和/或程序员执行,而验收测试涉及客户?

testing acceptance-testing system-testing

4
推荐指数
1
解决办法
6614
查看次数