小编Ant*_*ean的帖子

我可以从Export-ModuleMember中排除单个函数吗?

我在PowerShell脚本模块中定义了大量函数.我想使用Export-ModuleMember -Function *,但我想只排除一个函数.排除这一功能比列出所有包含的功能更容易.反正有没有实现这个目标?

powershell powershell-module

5
推荐指数
3
解决办法
1198
查看次数

为什么我在TeamCity服务器上从MSpec获取MissingMethodException?

最近我在TeamCity构建中运行我的MSpec测试时遇到了问题.这发生在两个不同的(不相关的)项目上.一切都在本地工作正常,但是当TeamCity构建运行时,我得到一些MSpec类型的MissingMethodExceptions.

然后构建继续运行我的规范的所有5(到目前为止),所有这些都通过.虽然构建失败,因为该步骤以错误结束.

如果它有所不同,我的目标是.NET 4.5并使用mspec-clr4.exe在TeamCity服务器上运行测试.我使用MSpec 0.5.9并使用TeamCity的NuGet安装程序直接从NuGet中获取它.我们在TeamCity 7.1上

这是我的构建步骤配置 TeamCity为MSpec测试运行器构建步骤配置

这是日志文件输出的一部分:

[04:27:12]Step 3/4: Unit test and Code Coverage (MSpec) (47s)
[04:27:12]Starting: C:\BuildAgent\plugins\dotnetPlugin\bin\JetBrains.BuildServer.NUnitLauncher.exe #TeamCityImplicit
[04:27:12]in directory: C:\BuildAgent\work\13af8c5b6a6273c6
[04:27:22]JetBrains dotCover Console Runner v2.0.425.72. Copyright (c) 2009-2012 JetBrains s.r.o. All rights reserved.
[04:27:22]
[04:27:39][JetBrains dotCover] Coverage session started [15/10/2012 04:25:58]
[04:27:45]Running specifications.
[04:27:47]

System.MissingMethodException: No parameterless constructor defined for this object.
   at System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck)
   at System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& …

teamcity mspec

5
推荐指数
0
解决办法
971
查看次数

如何使用Moq构建此表达式而不会出现方法组错误?

我需要在给定的集合上运行一个表达式来确定代码中的表达式是否正确写入.为了示例,我将省略一些不必要的上下文,但如果有人需要它,只需评论,我将编辑问题并添加您需要的任何内容.

假设我有以下内容:

public interface IRepository
{
    IQueryable<T> Query<T>(Expression<Func<T, bool>> expression);
}

public class Repository : IRepository
{
    public IQueryable<T> Query<T>(Expression<Func<T, bool>> expression)
    {
        return _session.Query<T>(expression);
    }
}
Run Code Online (Sandbox Code Playgroud)

我想编写如下的规范:

internal class when_executing_some_query : given_some_repository_context
{
    Establish context = () => 
    {
         IQueryable<SomeObject> objects = new List<SomeObject>
         {
             SomeObject1,
             SomeObject2,
             SomeObject3,
         }.AsQueryable();

         _expectedList = new List<SomeObject>
         {
             SomeObject1,
             SomeObject2,
         };

         MockedRepository.Setup(x => x.Query<SomeObject>(Moq.It.IsAny<Expression<Func<SomeObject, bool>>>)
             .Callback<Expression<Func<SomeObject, bool>>>(expression => _actualExpression = expression);
    }

    Because of = () => _actualList = objects.Select(_actualExpression).ToList();

    It should_execute_on_queryable_and_return_the_expected_items = …
Run Code Online (Sandbox Code Playgroud)

c# testing moq fluent-nhibernate mspec

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

如何将"完整堆栈"功能分解为验收,集成和单元测试?

我是行为驱动开发的新手,我正在努力学习它.我正在使用MSpec和Watin进行验收测试,并使用ASP.Net MVC 4进行单元测试的MSpec.我有一个简单的用户注册方案.

当用户输入用户名,密码,电子邮件等并点击注册按钮
时应验证电子邮件地址
应该检查用户名是否已经存在
它应该注册用户
它应该发送一个欢迎电子邮件
它应该重定向到主页

我想测试的东西无法使用Watin测试,例如发送电子邮件,检查用户是否存在等等.这些将是控制器测试的一部分.这是否意味着我的验收测试只会是当用户注册时他应该被重定向到主页?如何将整个过程分解为测试?

如果这些检查是在各种测试和不同级别实现的,那么如何获得MSpec提供的已实现所有功能的摘要报告?关于人们如何打破这些任务,然后他们如何获得集体报告等,我感到有点困惑.

tdd bdd watin unit-testing mspec

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

为什么Visual Studio 2012和ReSharper 7忘记显示Intellisense工具提示?

我在VS2012安装中发现了一个奇怪的行为.我使用VS2012 Pro和ReSharper 7. Intellisense不再显示代码建议.我在研究中发现了一些相关的问题,但是它们的设置总是略有不同,没有一个可以解决我的问题:

Intellisense正在运行,但它不再显示tooltip所选成员函数/属性.

如果我看一下C#文本编辑器设置

Tools -> Options -> Text Editor -> C# -> General
Run Code Online (Sandbox Code Playgroud)

大多数情况下,选择了两个必要的框Auto List Members和Parameter Information.但是,Intellisense中的代码建议不起作用.有时,当我查看所描述的设置时,它们是未被选中的.

选择它们将使代码建议像VS2010一样工作,但只能执行一次.当我之后检查设置时,它们很可能仍然被选中,但代码建议不再起作用.

有人建议删除%AppData%\Roaming\Microsoft\VisualStudio\11.0文件夹,这对我不起作用.我也尝试重置所有更改,这也没有任何帮助.

Tools -> Import and Export Settings -> Reset
Run Code Online (Sandbox Code Playgroud)

世界上有什么东西可以让Visual Studio 忘记它的设置并触发这种不合理的行为?

-编辑-

我按下CTRL+ Alt+ 显示代码建议Space.但是,每次我想看到这些建议时,我都必须按下该快捷方式.必要时,必须每次都能自动显示它们吗?

resharper intellisense visual-studio-2012

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

克隆git-svn中的trunk之后克隆分支的最佳方法是什么?

给定一个包含许多分支的大型Subversion存储库,我想先开始使用git-svn克隆trunk并稍后添加特定的分支.我看到至少有三种方法可以做到这一点,但是他们中的任何一种都是"官方的"还是有最好的办法?

假设以下布局:

https://svn-repo.com/svn/company
   +--core
   |  +--trunk
   |  +--branches
   |  |  +--fastboot
   |  |  +--playground
   |  +-tags
   +--mobile
      +--trunk
      +--branches
      +--tags
Run Code Online (Sandbox Code Playgroud)

因此,仅克隆项目的主干(无分支)修订版12345 core:

$ git svn clone --username=svnuser -r 12345 -Ttrunk https://svn-repo.com/svn/company/core
Run Code Online (Sandbox Code Playgroud)

这会将项目克隆core到同名目录中,并且运行git svn rebase将拉入所有更改(在修订版12345之后).在这一点上.git/config应该有这样的东西:

[svn-remote "svn"]
  url = https://svn-repo.com/svn/company
  fetch = core/trunk:refs/remotes/trunk
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好.现在,假设我要添加playground分支.这是它有点模糊的地方.


选项1:.git/config通过在那里添加分支来更新现有的远程:

[svn-remote "svn"]
  url = https://svn-repo.com/svn/company
  fetch = core/trunk:refs/remotes/trunk
  branches = core/branches/{playground}:refs/remotes/branches/*
Run Code Online (Sandbox Code Playgroud)

此时,我能够做到:

  1. 拉入分行的第23456号修订版 playground

    $ git svn fetch -r 23456 …

git git-svn

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

如何为Outlook创建"互联网日历订阅"?

目前,用户添加了"新的互联网日历",但它是ICS文件的一次性下载.我希望用户单击按钮以将其个人日历添加为Outlook的订阅.我想要自动更新"互联网日历订阅".

与SharePoint一样,名为"连接到Outlook"的按钮将您正在查看的日历添加为自动同步日历.

icalendar outlook asp.net-mvc-4

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

如何从SSIS包中禁用交互式消息框?

我正在命令行上执行SSIS包dtexec.exe.包调用MessageBox.Show()和MsgBox()(分别为C#和VB.NET)显示错误.这些盒子挂着自动作业处理器,因为它正在等待盒子关闭.

我的印象是,当不处于交互模式时,应该隐藏这些框.可以在不修改SSIS包的情况下抑制消息框吗?该软件包来自软件供应商,我真的不应该改变它.

编辑:我正在使用的完整命令(编辑删除详细信息)

C:\Program Files\Microsoft SQL Server\100\DTS\Binn\DTExec.exe /F D:\Path\To\Package.dtsx /Conn DBConnection;"Provider=SQLOLEDB;Data Source=SERVER;Initial Catalog=DB;Integrated Security=SSPI;Connect Timeout=60" \Package.Variables[User::InputFileName].Properties[Value];C:\Path\To\Input.csv
Run Code Online (Sandbox Code Playgroud)

EDIT2:消息框代码示例.这是一个脚本任务.

Public Sub Main()
    MsgBox("Failed to read/parse input file or generic database failure while running " + Dts.Variables("System::PackageName").Value.ToString() + ". Please check the layout of the feed and database connectivity.")
    Dts.TaskResult = ScriptResults.Failure
End Sub
Run Code Online (Sandbox Code Playgroud)

编辑3:如果将来有人对测试InteractiveMode的代码感兴趣.它也必须通过Script Task的ReadOnlyVariables传入.我最后修改了包,因为还有其他问题.

VB.NET
If CBool(Dts.Variables("System::InteractiveMode").Value) = True Then
    ....
End if

C#
if ((bool)Dts.Variables["System::InteractiveMode"].Value == true)
    ....
}
Run Code Online (Sandbox Code Playgroud)

ssis batch-file

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

为什么这个 VirtualBox 磁盘不能动态扩展?

我有一个运行 Ubuntu 14.04 的 vagrant 配置的 VirtualBox VM。每当在框中进行主要的 mysql 导入时,我都会注意到导入不完整。如果我尝试重新启动 mysql,则会出现此错误:

[FAIL] /etc/init.d/mysql: ERROR: The partition with /var/lib/mysql is too full! ... failed!
Run Code Online (Sandbox Code Playgroud)

我通过克隆到 VDI、调整大小并克隆回 VMDK 来调整 VMDK 映像的大小,因为我读过这可能会解决问题。

$ df -h
rootfs                               9.1G  8.7G  8.0K 100% /
Run Code Online (Sandbox Code Playgroud)

我知道/tmp文件系统是在 Ubuntu 中单独挂载的,所以我什至尝试更改 mysql.ini 上的 tmp 目录,但这也不起作用。

$ VBoxManage showhdinfo <guid>
Parent UUID:    base
State:          created
Type:           normal (base)
Storage format: VMDK
Format variant: dynamic default
Capacity:       24000 MBytes
Size on disk:   6894 MBytes
Run Code Online (Sandbox Code Playgroud)

virtualbox vagrant

5
推荐指数
0
解决办法
337
查看次数

我应该将自签名证书提交给源代码管理吗?

假设我们为每个客户生成一个自签名证书。它们用于打包/部署管道的某些部分,并最终出现在客户的本地计算机上。它们用于连接到我们的网络服务。

我们应该将这些证书提交给源代码管理吗?该存储库是私有的,只有同事可以访问。我是否应该出于某种安全原因将它们排除在外(即使这只是限制意外暴露的访问,更不用说恶意活动了)?

如果我们将它们排除在外,我们是否应该每次都将它们生成为打包/部署管道的一部分?或者将它们保存在某个安全的密钥库中并检索它们?

security version-control certificate

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