谁能告诉我为什么这不起作用?
>>> import mock
>>> @mock.patch('datetime.date.today')
... def today(cls):
... return date(2010, 1, 1)
...
>>> from datetime import date
>>> date.today()
datetime.date(2010, 12, 19)
Run Code Online (Sandbox Code Playgroud)
也许有人可以建议一个更好的方法?
我知道可以通过在sbt中运行来运行单个测试
testOnly *class -- -n Tag
Run Code Online (Sandbox Code Playgroud)
有没有办法告诉sbt/scalatest在没有标签的情况下运行单个测试?例如:
testOnly *class -- -X 2
Run Code Online (Sandbox Code Playgroud)
这意味着"在课堂上进行第二次测试.无论是什么".我们有一堆测试,没有人费心去标记它们,所以有没有办法在没有标签的情况下运行单个测试?
有什么区别expect(something).toBe(true),expect(something).toBeTruthy()和expect(something).toBeTrue()?
请注意,这toBeTrue()是一个自定义匹配器,介绍在jasmine-matchers其他有用和方便的匹配器,如toHaveMethod()或toBeArrayOfStrings().
问题是通用的,但是,作为一个真实的例子,我正在测试一个元素是否显示在protractor.在这种情况下我应该使用哪个匹配器?
expect(elm.isDisplayed()).toBe(true);
expect(elm.isDisplayed()).toBeTruthy();
expect(elm.isDisplayed()).toBeTrue();
Run Code Online (Sandbox Code Playgroud) 哪些是最先进的框架和工具,可用于python实践行为驱动开发?特别是找到类似rspec和mocha的类似工具的红宝石会很棒.
我正在考虑将单元测试添加到正在生产的现有项目中.它是在18个月之前开始的,之前我真的看到了TDD (面掌)的任何好处,所以现在它是一个包含大量项目的相当大的解决方案,我没有最模糊的想法从哪里开始添加单元测试.是什么让我觉得这是偶尔一个旧的bug似乎重新出现,或者一个错误被检查为固定而没有真正修复.单元测试可以减少或防止出现这些问题.
通过阅读有关SO的类似问题,我看到了一些建议,例如从错误跟踪器开始,并为每个错误编写测试用例以防止回归.但是,我担心我最终会错过大局并最终错过了如果我从开始使用TDD就会包含的基本测试.
是否有任何应遵循的流程/步骤,以确保现有解决方案经过适当的单元测试而不仅仅是提交?如何确保测试质量良好,并且不仅仅是测试的情况比没有测试更好.
所以我想我也要问的是;
(显然,第三点的答案完全取决于您是否与管理层或开发人员交谈)
增加赏金以尝试吸引更广泛的答案,这不仅证实了我现有的怀疑,这是一件好事,而且还有一些很好的理由.
我的目标是稍后用优点和缺点写出这个问题,试图向管理层表明,值得花费时间将产品的未来发展转移到TDD上.我希望在没有自己偏见的观点的情况下接近这一挑战并发展我的推理.
我的大多数测试都提出了以下内容,我不明白为什么.所有方法调用都会引发"authenticate"错误.我检查了代码是否有一个名为"authenticate"的方法,但没有这样的方法.
1) Admin::CommentsController handling GET to index is successful
Failure/Error: get :index
undefined method `authenticate!' for nil:NilClass
# ./spec/controllers/admin/comments_controller_spec.rb:9:in `block (3 levels) in <top (required)>'
124) PostsController handling GET for a single post should render show template
Failure/Error: get :show, :year => '2008', :month => '01', :day => '01', :slug => 'a-post'
undefined method `authenticate' for nil:NilClass
# ./app/controllers/application_controller.rb:18:in `set_current_user_for_model'
# ./spec/controllers/posts_controller_spec.rb:131:in `do_get'
# ./spec/controllers/posts_controller_spec.rb:140:in `block (3 levels) in <top (required)>'
Run Code Online (Sandbox Code Playgroud)
该项目可以在那里找到=> https://github.com/agilepandas/enki,以防你想自己运行测试.
我正在尝试定义一些端点并使用进行测试nodejs.在server.js我有:
var express = require('express');
var func1 = require('./func1.js');
var port = 8080;
var server = express();
server.configure(function(){
server.use(express.bodyParser());
});
server.post('/testend/', func1.testend);
Run Code Online (Sandbox Code Playgroud)
并在func1.js:
var testend = function(req, res) {
serialPort.write("1", function(err, results) {
serialPort.write("2" + "\n", function(err, results) {
});
});
});
exports.testend = testend;
Run Code Online (Sandbox Code Playgroud)
现在,test.js我正在尝试使用此端点:
var should = require('should');
var assert = require('assert');
var request = require('supertest');
var http = require('http');
var app = require('./../server.js');
var port = 8080;
describe('Account', function() …Run Code Online (Sandbox Code Playgroud) 我有很多发送电子邮件的应用程序.有时它一次只有一两条消息.有时它是成千上万的消息.
在开发过程中,我通常通过将自己的地址替换为任何收件人地址来进行测试.我确信这是其他人所做的,直到他们厌倦了它并找到更好的解决方案.
我正在考虑创建一个虚拟SMTP服务器,它只捕获消息并将它们转储到SQLLite数据库或mbox文件或其他任何内容中.
但肯定这样的工具已经存在?你如何测试发送电子邮件?
我在https://github.com/ry/node/wiki/modules#testing上查看了相当长的测试框架列表.这些框架的经验是什么?
显然,在浏览器中运行的能力将是一个很大的好处,但我主要对Node.js感兴趣.具有严重异步倾斜的东西会很棒.
什么是使用Mockito间谍的用例?
在我看来,使用callRealMethod可以使用mock处理每个间谍用例.
我可以看到的一个区别是,如果你想让大多数方法调用都是真实的,它会节省一些代码行来使用模拟和间谍.这是它还是我错过了更大的图景?