我正在测试我的银行模型如下:
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策略来结束我的测试用例.我做错了吗?
谢谢.
我在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) 我的代码中有一个空表,如下所示:
<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。我接受了这个问题的第一个有效答案。
我想在我的linux盒子上创建一个我可以推送或拉出的git repo,而不是像github上的外部托管的那样.也就是说,我需要将本地和远程存储库放在同一台机器上.
有谁知道我会怎么做呢?
谢谢.
以此代码为例 - 我认为当显示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块(重试方法中的那个)永远不会被击中.
javascript ×2
.net ×1
backbone.js ×1
c# ×1
chai ×1
exception ×1
generics ×1
git ×1
html-table ×1
jquery ×1
mocha.js ×1
selenium ×1
selenium-ide ×1
unit-testing ×1