问题标签 [functional-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 投票
3 回答
1469 浏览

php - 在功能测试中使用 PHP 的 class_alias 时重新声明类的问题

我正在使用 PHP 5.3 的 class_alias 来帮助处理我的 Symfony 1.4 (Doctrine) 表单。我使用单个操作来处​​理多个表单页面,但使用 switch 语句来选择要使用的表单类。

这在浏览网站时效果很好,但我的功能测试失败了,因为当一个页面被多次加载时,就像这样:

我收到对第二个请求的 500 响应,并出现以下错误:

最后一个请求引发了未捕获的异常 RuntimeException: PHP 在 /.../apps/frontend/modules/.../actions/actions.class.php 第 225 行发送了一个警告错误(无法重新声明类 FormAlias)

这使得测试表单提交(通常回发给自己)变得非常困难。

这大概是因为 Symfony 的测试器没有以同样的方式清除吞吐量。有没有办法“unalias”或以其他方式允许这种重新声明?

0 投票
1 回答
636 浏览

php - 在 Symfony 功能测试中找不到文件上传的 mime 类型

当我通过 Symfony 运行我的功能测试时,上传的文件没有提供 mime 类型。

我的测试用例显示:

并在命令行上执行,如下所示:

给出的输出是:

为什么没有提供 mime 类型?有没有办法输入 mime 类型?

0 投票
1 回答
2896 浏览

java - 使用 Selenium Tool 时 ExtJs 动态 Id 生成

我正在尝试测试一个使用 EXTJS 开发的 UI 的 Web 应用程序。我面临的问题是,当我尝试录制宏并自动化测试时,我遇到了一个主要问题。

  1. ExtJs Ids 是动态的(比如说我第一次录制宏时,Id 是 extj-343,下次我尝试播放录制的宏时,Id 不会保持不变)

  2. 所以我得到一个运行时异常并且宏没有完成执行。

尝试的解决方案:

我尝试了 iMacro 的 Selenium 替代测试工具,但遇到了同样的问题。

据我了解,应该有某种方法可以使这个 Ids 静态化,以便可以解决问题,或者应该有一些可用的解决方法。

0 投票
1 回答
740 浏览

grails - Grails 1.3.3 和功能测试插件 1.2.7 问题

有没有人在 Grails 1.3.3 中让功能测试插件工作有任何问题?我在以前的项目中使用它没有问题,但只是尝试将它安装到我的最新项目中,但没有运气。

安装似乎很顺利。

运行脚本: grails create-functional-test XXXXX 导致没有测试文件。这是输出:

我尝试通过 had 创建一个测试脚本,并从插件页面粘贴到演示 Twitter 搜索测试中。它也失败了。这是错误和堆栈跟踪:

想法?

谢谢,丹

0 投票
8 回答
1060 浏览

java - 如何简化 Java 中无副作用方法的测试?

函数(无副作用的函数)是这样一个基本的构建块,但我不知道在 Java 中测试它们的令人满意的方法。

我正在寻找使测试更容易的技巧的指针。这是我想要的一个例子:

我正在寻找一些可以放在测试、MyObject 或 myFunction 上的注释,以使测试框架在我给出的给定输入/输出组合的所有可能排列中自动重复对 myFunction 的调用,或者某些子集可能的排列,以证明该函数是功能性的。

例如,上面(仅)两个可能的排列是:

  • myObj = new MyObject();
  • myObj.myFunction(someInput);
  • myObj.myFunction(someOtherInput);

和:

  • myObj = new MyObject();
  • myObj.myFunction(someOtherInput);
  • myObj.myFunction(someInput);

我应该只能提供输入/输出对(someInput,expectedOutput)和(someOtherInput,someOtherOutput),其余的由框架完成。

我没有使用过 QuickCheck,但它似乎不是一个解决方案。它被记录为生成器。我不是在寻找一种为我的函数生成输入的方法,而是一个让我以声明方式指定我的对象的哪一部分是无副作用的框架,并使用基于该声明的一些排列来调用我的输入/输出规范。

更新:我不想验证对象没有任何变化,记忆功能是这种测试的典型用例,记忆器实际上改变了它的内部状态。但是,给定一些输入的输出始终保持不变。

0 投票
2 回答
27688 浏览

django - 如何在 django tests.py 中创建管理员用户

我正在尝试创建一个管理员用户作为我的 tests.py 的一部分来检查权限。

更新:tests.py 是 TestCase 子类的标准格式,下面的代码在 setUp() 函数中调用。

我可以创建普通用户,但不能创建管理员用户。如果我试试这个:

或 self.adminuser = User.objects.create_superuser('admin', 'admin@test.com', 'pass') self.adminuser.save()

我得到:

如果我删除 is_staff 行一切都很好(除了我不能做我的测试!)

我必须将管理员用户加载为固定装置吗?

UserProfile 定义如下:

完整的错误回溯是:

答案似乎是您无法在 setUp 中创建管理员用户,但您可以在任何其他功能中创建,因此如果您希望管理员用户进行测试,请使用夹具!

0 投票
1 回答
144 浏览

unit-testing - 使用 boost.test 进行分布式单元测试/基于场景的单元测试

我正在使用 Boost.test 库为应用程序开发单元测试用例。有些 API 可以直接测试。

但是,有些 API 需要测试机器之间的交互。例如,在机器 1 中执行某个 API 应该触发测试机器 2 中的 API,并且它的响应需要在机器 1 中再次使用才能成功完成。

我怎样才能同步这个?Boost 是否为这种交互提供了其他库?如果还有其他方法,请提出建议。

提前感谢您的时间和帮助。

0 投票
1 回答
4712 浏览

ruby-on-rails - 如何在 Rails 的功能测试中测试 cookie 状态?

如何测试使用 cookie 的给定控制器操作?

如何在功能测试中设置 cookie 以及如何获取它们?

0 投票
5 回答
2429 浏览

java - 测试CRC逻辑的最佳方法?

如何验证两个 CRC 实现将生成相同的校验和?

我正在寻找一种针对 CRC 的详尽的实施评估方法。

0 投票
1 回答
944 浏览

android - 测试涵盖的 Android 项目的好例子?

您能否指出一些具有单元测试功能的 Android 项目的好例子?

从这些例子中学习会很棒。