我有一个+ 10K系列Backbone Marionette应用程序,我们正在通过Karma运行测试和覆盖.
我想包括所有来源,以便我们可以更好地了解我们的测试未涵盖的内容.
我一直includeAllSources在karma配置中传递选项,但我仍然没有看到karma显示所有文件的结果(报告只显示+ 3K行覆盖,或多或少我们知道我们测试的行数).
难道我做错了什么?还有其他方法可以包含所有来源吗?
有一个Karma插件能够处理这个,但插件不再工作(修改后使其运行,但结果仍然相同).
--include-all-sources从Karma运行时,有没有办法将选项传递给伊斯坦布尔?
只是想知道在设计面向文档的数据库时是否有任何指导方针,我特别谈到CouchDb.
我知道无模式的东西可以采取我们想要的形状但是,有没有最好的做法?
提前致谢!= d
最后,我已经能够通过反射,类型的成员Func<T, TResult>,现在,我如何调用它?
当我检索它时,我通过Type.GetMembers方法执行它,并返回一个没有Invoke方法的MemberInfo类型; 我怎么能调用它?
人们,再次感谢!=)
我正在测试一些需要使用FileInfo和DirectoryInfo对象的代码,而不是写一个包装器和几个接口来解决这个问题,我认为在开始测试时创建一些文件然后删除那些文件是个好主意.测试完成.这是我创建文件的方式:
public static void CreateTestSchedules(int quantity)
{
String folder = Path.Combine(Directory.GetCurrentDirectory(), "FolderFiles");
for(int quantity=10; quantity > 0; quantity--)
{
String filename = Path.GetTempFileName();
using (FileStream fileStream = File.Create(Path.Combine(folder, filename)))
{
XDocument fileContent = Helper.CreateContent(filename);
Byte[] bytes = ASCIIEncoding.ASCII.GetBytes(fileContent.ToString());
fileStream.Write(bytes, 0, bytes.Length);
fileStream.Flush();
fileStream.Close();
}
}
}
Run Code Online (Sandbox Code Playgroud)
此时,我没有看到问题:文件在文件夹下创建,一切看起来都很好.
然后,当测试的执行继续时,我尝试打开其中一个文件以在其中写入内容,并且我得到一个异常,指示我要打开以进行写入的文件正被其他进程使用,并且在检查之后更多细节,我将TestDriven.Net进程视为阻止文件的进程.这是我用来打开并尝试将数据写入文件的代码:
using (FileStream file = new FileStream(filename, FileMode.Append))
{
Byte[] bytes = ASCIIEncoding.ASCII.GetBytes(dataToWrite.ToString());
if (file.CanWrite)
{
file.Write(bytes, 0, bytes.Length);
}
}
Run Code Online (Sandbox Code Playgroud)
我的问题是:为什么会发生这种情况?我没有正确释放文件句柄?有没有从TestDriven.Net窃取锁?我应该以不同方式创建此文件吗?我应该以其他方式编写测试吗?
在此先感谢您的答案和评论=).
编辑:
要解决这个特定的问题(真正的问题,正如Dave Swersky提到的那样,单元测试不应该接触文件系统)我使用James Wiseman发送的链接(再次感谢James =)并使用FileShare标志创建文件,这样我可以进入文件,打开它写入它.像这样:
using (FileStream fileStream …Run Code Online (Sandbox Code Playgroud) 我刚开始使用ASP.NET MVC,我正在尝试使用这种新架构进行身份验证.
所以,我开始在官方网站上关注一个教程,当我试图通过网站管理工具添加一些用户时,我发现了这个错误:
您选择的数据存储存在问题.这可能是由无效的服务器名称或凭据或权限不足引起的.它也可能是由未启用角色管理器功能引起的.单击下面的按钮可重定向到可以选择新数据存储的页面.
以下消息可能有助于诊断问题:无法加载类型"MyMvcApp.MvcApplication".
现在,我在web.config中唯一改变的是连接字符串,我确定连接字符串不是问题(我在其他项目中使用的是相同的).
编辑:这是连接字符串:"Data Source=myMachine\SqlExpress;Initial Catalog=TestDB;User ID=TestUser;Password=123456"
我尝试了很多东西并且搜索了很多内容,但没有任何效果.
那么,有什么想法吗?正如我所说,除了连接字符串之外,我没有更改web.config中的任何内容.
提前致谢,
我一直在使用Trello API(非常简洁,顺便说一句),但我不能简单地找到为什么我无法获得组织的董事会名单.文档说我必须以下列形式打电话:
GET https://api.trello.com/1/organizations/myorganization/boards?key=<my_app_key>
Run Code Online (Sandbox Code Playgroud)
但我继续得到一个空数组作为响应.我是我想要董事会的组织成员,但我仍然没有看到任何董事会.
如果我尝试这样做但是通过会员(我可以获得会员资格的董事会),我只会得到一个我创建的董事会.
在此先感谢您的评论!
问候,
我认为这只是一个" 最佳实践"问题,但我想知道是否可以制作一个不仅仅依赖于jQuery的jQuery扩展,而且还有另一个jQuery扩展.
谢谢你的回答!= d
我正在使用FileHelpers读取一个包含数百列的CSV文件,但我只需要前二十个左右,所以在类中创建映射时我只放了那二十列.
什么时候解析,我得到以下异常
在最后一个字段'CompanyDivision'之后找到分隔符''(文件错误或者你需要在记录类中添加一个字段)
我在其他的答案读了一个破解的,这是把空字段你不想读列的其余部分,但正如我所说的,我有数百那些.
有没有办法配置引擎在一定数量的列后停止?或者有没有办法扩展或修改引擎来做到这一点?
c# ×3
api ×1
asp.net-mvc ×1
couchdb ×1
csv ×1
filehelpers ×1
javascript ×1
jquery ×1
karma-runner ×1
nosql ×1
trello ×1
unit-testing ×1
wsat ×1