小编kha*_*d13的帖子

Mocha/Chai异步测试'done()'fn无法正常工作

我正在测试我的银行模型如下:

describe('Bank Model - Ajax', function () {

    it('loads bank', function (done) {

        var bank = new Bank();

        bank.OnLoaded = _(function () {
            expect(this.id).to.eql(1171);
            expect(true).to.eql(false);
            done();
        }).bind(bank);

        bank.load(1171);


    });
});
Run Code Online (Sandbox Code Playgroud)

加载调用向我的服务器发出ajax请求.我的问题是expect(true).to.eql(false);抛出一个Uncaught Assertion Error,我不知道为什么.我正在使用推荐的Mocha策略来结束我的测试用例.我做错了吗?

谢谢.

javascript unit-testing mocha.js backbone.js chai

12
推荐指数
1
解决办法
4444
查看次数

Selenium点击链接

我在FireFox中使用Selenium的IDE进行一些测试,我希望Selenium点击第二个链接(Text2).知道我是怎么做到的吗?不幸的是,我无权访问HTML,无法修改它.记录功能似乎没有注册点击.

代码附在下面.提前致谢!

<div class="class1">
    <div class="class2">
        <span class="class3"><a href="#" onclick="fn1();">Text1</a></span>
    </div>
</div>

<div class="class1">
    <div class="class2">
        <span class="class3"><a href="#" onclick="fn2();">Text2</a></span>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

selenium selenium-ide

6
推荐指数
1
解决办法
1万
查看次数

使用 jQuery 向空表添加行时处理 tbody

我的代码中有一个空表,如下所示:

<table id='rostertable'></table>
Run Code Online (Sandbox Code Playgroud)

当我添加一个<tr>using jQuery 的append函数时,根据我的 chrome 检查器,我的表如下所示:

<table id='rostertable'><tbody><tr>...</tr></tbody></table>
Run Code Online (Sandbox Code Playgroud)

似乎 tbody 是自己添加的,这会在我遍历 DOM 时导致问题。

为了保持一致性,我认为如果我自己添加 tbody 并直接附加到它会更好。这可能吗?我尝试制作占位符,<table id='rostertable'><tbody></tbody></table>但 jQuery 选择器$('#rostertable tbody')返回 null,我的 chrome 检查器也不显示 tbody 标签。

编辑:没关系,它最终成为我的 javascript 中一个无关的错误。有一次我正在清除表的内容并运行 $("#rostertable").html(""),这当然删除了 tbody。我接受了这个问题的第一个有效答案。

javascript jquery html-table

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

在Ubuntu框上创建一个本地Git仓库

我想在我的linux盒子上创建一个我可以推送或拉出的git repo,而不是像github上的外部托管的那样.也就是说,我需要将本地和远程存储库放在同一台机器上.

有谁知道我会怎么做呢?

谢谢.

git version-control

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

我可以捕获c#中泛型参数传入的类型的异常吗?

以此代码为例 - 我认为当显示TException时,我应该能够"捕获"它并重试我func()适当的次数.但是当我把这些代码放在野外时,即使抛出TException类型的异常,它也会跳过catch子句并冒泡.有人可以解释原因吗?

public static T TryNTimes<T, TException>(Func<T> func, int times) where TException : Exception
{
    if (times <= 0)
        throw new ArgumentException($"TryNTimes: `times` must be a positive integer. You passed in: {times}");

    while (times > 0)
    {
        try
        {
            return func();
        }
        catch (TException)
        {
            if (--times <= 0)
                throw;
        }
    }

    // should never reach here
    return default(T);
}
Run Code Online (Sandbox Code Playgroud)

代码被调用如下:

await RetryUtils.TryNTimes<Task, MyCustomException>(
        () => TryHandleElasticMappingError(dataGridResults, dataGridRecords),
        MyFieldsCount)
    .ConfigureAwait(false);
Run Code Online (Sandbox Code Playgroud)

这是一个异步问题吗?上面的行包含在Try-Catch中,它捕获了Exception我能够验证Exception类型的位置MyCustomException.我可以确认内部catch块(重试方法中的那个)永远不会被击中.

.net c# generics exception

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